1
かなり複雑なSQLクエリを作成したいのですが、条件によっては0/1またはTRUE/FALSEとなります。カウント条件が0より大きい場合のcase文の作成
アイデアはFALSE、私は顧客テーブルを持って、その後、私は別のテーブルに小切手のカップルを作りたい、といずれかに該当する場合は、その後、我々はTRUEを返し、そうでない場合ということです。
私はCASEでこれを行うと考えていました。これは返す
select
case
((select count(*) from boughtleads bl where bl.customerid = cu.id)>0)
then 'TRUE'
else 'FALSE'
end
from customers cu
left join leadagents la on la.customerid = cu.id
where cu.vatnumber = '30218124'
:
Msg 102, Level 15, State 1, Line 3
Incorrect syntax near '>'.
私の挑戦は続いている以下の例を参照してください。まず第一に、上記のクエリは何らかの理由で失敗し、私の他の問題はORを使うことができないということです。
select
case
(
((select count(*) from boughtleads bl where bl.customerid = cu.id)>0)
OR
((select count(*) from leadnotifications ln where ln.leadagentid = la.id)>))
then 'TRUE'
else 'FALSE'
end
from customers cu
left join leadagents la on la.customerid = cu.id
where cu.vatnumber = '30218124'
これを攻撃する方法上の任意のアイデア:
私の理想的な擬似コードのようなものでしょうか?
もちろん、まあまあです。どうもありがとう!あなたは "OR"声明のヒントを持っていますか? :) –
@LarsHoldgaard。 。 。単に 'またはexist()'を使用してください。 –