として、私は、SQL Serverのクエリを持っていますように、テーブルの動作ユニオンを使用したSQL Serverクエリ - 良い代替が可能ですか?
SELECT top 1 vConsentInfo FROM
(
SELECT cons.vConsentInfo,cons.dTimeStamp ,logs.iPartnerProfileID
FROM H_OutMessageLog logs INNER JOIN H_OutMessageConsent cons on cons.iOutMessageQID = logs.iOutQueueID
WHERE logs.iPatID = 65686 and logs.iPracID = 4
UNION
SELECT cons.vConsentInfo,cons.dTimeStamp,Q.iPartnerProfileID
FROM H_OutMessageQueue Q INNER JOIN H_OutMessageConsent cons on cons.iOutMessageQID = Q.iOutQueueID
WHERE Q.iPatID = 65686 and Q.iPracID = 4
) A
WHERE A.iPartnerProfileID = Prof.IPartnerProfileID
Order BY dTimeStamp DESC
:レコードが初めでH_OutMessageQueue
に挿入されます。その ... H_OutMessageConsent
に挿入されたが今H_OutMessageQueue
からレコードを処理し、H_OutMessageLog
にそれらのログを別々のワーカープロセスがあります....
私はこのUNION
事を取り除くことはできますか?これはより大きなCTE
クエリのサブクエリです。
なぜあなたは 'UNION'を取り除きたいのですか? – Oded
私が知りませんが、この目的のためにもっと強力な構造があれば....実際には、私はこれらの2つのテーブル内で最も新しいエントリをソートして取得できるように、実際にはユニオンを作成しなければなりませんでした。 – Umer