0

日付値に基づいて 2 つのテーブルを結合する必要があります。

TableAdatetime秒、分などを含む2001-04-30 16:59:00.000

TableBdatetime秒なしで、分が含まれるようになりました2001-04-30 00:00:00.000

日付だけで参加したい

select * from dbo.TableA  m
LEFT JOIN TableB z ON z.DocId=m.DocId
AND CHARGE_DATE=z.DocDate

適切な結果が得られない

4

1 に答える 1

2

TableB に常に時間がないことが 100% 確実である限り、次のようになります。

AND m.CHARGE_DATE >= z.DocDate
AND m.CHARGE_DATE <  DATEADD(DAY, 1, z.DocDate)

または

AND CONVERT(DATE, m.CHARGE_DATE) = z.DocDate

これらの列のいずれかのインデックスの有用性に応じて、これらを反転することができます。

于 2013-10-25T13:53:28.090 に答える