クライアントから単純なテーブルを継承しました。このテーブルには、2 つの住所 (配送先住所と会社の住所) が shipping_address と business_address の 2 つのフィールドに格納されています。enum('shipping','business') を持つ ship_to と呼ばれるフィールドと、氏名のフィールドがあります。クライアントは次のような出力を望んでいます。
フルネーム:住所
「住所」列は、ship_to 値によって選択する必要があります。ship_to = shipping の場合、shipping_address 列を使用します。ship_to = business の場合、business_address 列を使用します。
例えば:
Joe Smith: Roach Street #10, Rats Village
IF条件でCONCATを使用するにはどうすればよいですか? 私はこのようなものを推測していますが、これは明らかに単なるアイデアです:
SELECT CONCAT( full_name, ':', IF (ship_to=='shipping', shipping_address, business_address ) AS contact FROM `table`
しかし、これを行うための正しい構文は何ですか?