完全にいっぱいで、行のどこかに入力値がある最初の行を選択するクエリを作成しようとしています。それ以外の場合は何も取得しません。これが私がこれまでに作ったものです:
CASE WHEN `name_1` != '' and `name_2` != '' and `name_3` != '' and `name_4` = 'Jimmy' THEN (SELECT`name_1`,`name_2`,`name_3`,`name_4` FROM `names`) end
CASE WHEN `name_1` != '' and `name_2` != '' and `name_4` != '' and `name_3` = 'Jimmy' THEN (SELECT`name_1`,`name_2`,`name_3`,`name_4` FROM `names`) end
CASE WHEN `name_1` != '' and `name_4` != '' and `name_3` != '' and `name_2` = 'Jimmy' THEN (SELECT`name_1`,`name_2`,`name_3`,`name_4` FROM `names`) end
CASE WHEN `name_4` != '' and `name_2` != '' and `name_3` != '' and `name_1` = 'Jimmy' THEN (SELECT`name_1`,`name_2`,`name_3`,`name_4` FROM `names`) end
それはエラーを返します:
1064 - SQL 構文にエラーがあります。1 行目の 'CASE WHEN
name_1
!= '' andname_2
!= '' andname_3
!= '' andname_4
= ''の近くで使用する正しい構文については、MySQL サーバーのバージョンに対応するマニュアルを確認してください。
明らかに間違って書かれているので、正確に何が間違っているのですか?私はこれを正しい方法で行っていますか?