1

従業員の氏名を取得し、MySQL 関数「Concat」を使用してそれらを結合しようとしています。一部の従業員はミドル ネームを持っていません。この場合、SQL はエラーをスローします。従業員にミドルネームのイニシャルがない場合でも、従業員のフルネームを取得するにはどうすればよいですか?

  SELECT CONCAT(`Employee`.`F_NAME`,
                 ' ', 
                 LEFT(`Employee`.`M_NAME`, 1),
                 '. ', 
                `Employee`.`L_NAME`) 
  FROM `Employee`
4

1 に答える 1

1

IFNULLを使用してみてください

  SELECT CONCAT(`Employee`.`F_NAME`,
                 ' ', 
                 IFNULL(CONCAT(LEFT(`Employee`.`M_NAME`, 1),'. '),''), 
                `Employee`.`L_NAME`) 
  FROM `Employee`
于 2013-02-21T07:16:39.587 に答える