私はここで少し複雑な表示をしています。 私が見落としているだけで、IF/ELSEの機能があるはずです。
2つのテーブル(customers, addresses)を照会しています。 最初のテーブルにはメインのレコードがありますが、2番目のテーブルにはLEFT JOINするレコードがあったりなかったりします。
アドレステーブルにレコードがない場合は0を表示したいです。 そして、レコードが存在する場合は、1だけを表示したいのです。
これまでに試したこと。
SELECT c.name, COALESCE(a.addressid,0) AS addressexists
FROM customers c
LEFT JOIN addresses a ON c.customerid = a.customerid
WHERE customerid = 123
この最初の例ではできません。 しかし、COALESCEの使い方が間違っているかもしれません。
どうすれば、NULLの場合は0を、存在する場合は1を表示できますか?