SELECT
Counting = ISNULL(COUNT(A.Numbers), 0),
B.Date AS DateX
From Schema1.Table A INNER JOIN Schema2.Table B
ON A.xyz=B.xyz
Where B.Date = GetDate()
Group by B.Date
有時,B.Date
將不會有今天的日期。我仍然希望結果輸出爲Counting = 0 and DateX = Todays date
。T-SQL代碼將不會給出所需的輸出
我該怎麼做?
謝謝
編輯大衆的需求
A.Numbers = 123;456;789;012,...etc
B.Date = 2012-11-24, 2012-11-24,-212-11-24,2012-11-26
所以計數2012-11-24 = 3
和2012-11-26 = 1
但仍然會有當我設置B.Date
到2012-11-25
我想告訴Counting = 0
時B.Date = 2012-11-25
您的查詢當前查找的行數'B.Date' =當前毫秒數,這是不太可能發生的。你不應該搜索'WHERE CONVERT(DATE,B.Date)= CONVERT(DATE,GETDATE())'或'WHERE B.Date> = CONVERT(DATE,GETDATE())和B.Date
我有轉換到位以獲取YYYY-MM-DD ...這只是一個更簡單的版本 – 007
任何類型的字符串轉換爲strip time讓你的where子句不可靠,你應該使用我在我的評論中列出的方法之一,請參閱http://www.sqlperformance.com/2012/09/t-sql-queries/what-is-the最有效的方法來修剪時間從日期時間和http://www.sqlperformance.com/2012/10/t-sql-queries/trim-time –