一時テーブルから電話番号をテーブルに入力しようとしています。問題なくクエリを書きました。しかし、ここでの私の問題は、会社がすでにプライマリ番号を持っているかどうかを知ることです
そこで、「cvsnumbers」という名前の一時テーブルから 2 つのフィールドを選択します。1) company_code (id) と電話番号です。
main_number フィールドの値を変更するには、case ステートメントを追加する必要があります。したがって、番号に main_number = 1 の番号が既にある場合は、新しい電話番号に 0 を挿入する必要がありますが、main_number がない場合は、新しい電話番号に 1 を挿入して、アカウントのプライマリ電話番号にする必要があります。
これは私の質問です
SELECT ac.account_id,
REPLACE(REPLACE(REPLACE(REPLACE(ta.phone_number, '-', ''), ' ', ''), ')', ''),'(','') AS Phone,
IFNULL(ta.ext, '') AS extention,
IFNULL(ta.main_number, 0) AS MainNumber,
ta.type AS contact_type,
'2' AS created_by
FROM cvsnumbers AS ta
INNER JOIN accounts AS ac ON ac.account_id = ta.company_code
WHERE LENGTH(REPLACE(REPLACE(REPLACE(REPLACE(ta.phone_number, '-', ''), ' ', ''), ')', ''),'(','') ) = 10
AND REPLACE(REPLACE(REPLACE(REPLACE(ta.phone_number, '-', ''), ' ', ''), ')', ''),'(','') NOT IN (SELECT contact_number FROM contact_numbers)
私の問題は
`IFNULL(ta.main_number, 0) AS MainNumber,`
company_code にすでに main_number があるかどうかを確認するために、これを what-case ステートメントに変更したいと思います。
どうすればこれを変更できますか?
ありがとう