我使用的普適SQL 10.3(我們叫它MS SQL,因爲幾乎所有的東西是一樣的關於語法),我有一個查詢中使用他們的電子郵件地址作爲查找重複的客戶重複密鑰:需要與內部上方的SQL語句加入選擇
SELECT arcus.idcust, arcus.email2
FROM arcus
INNER JOIN (
SELECT arcus.email2, COUNT(*)
FROM arcus WHERE RTRIM(arcus.email2) != ''
GROUP BY arcus.email2 HAVING COUNT(*)>1
) dt
ON arcus.email2=dt.email2
ORDER BY arcus.email2";
我的問題是我需要在email2字段上進行不區分大小寫的搜索。我需要用UPPER()來轉換這些字段。
我如何在這個查詢做一個UPPER()有點卡住了。我嘗試了各種組合,其中包括我認爲肯定會有效的一種組合:
... ON UPPER(arcus.email2)=UPPER(dt.email2) ...
...但這並不奏效。它把它作爲一個有效的查詢,但它跑了很長時間,我最終放棄了並停止了它。
怎麼做就EMAIL2領域上轉換任何想法?
謝謝!
這樣做了,在合理的時間!出於某種原因,我認爲我必須在arcus.email2上的第一個SELECT上執行UPPER(),但顯然情況並非如此。 Kudos! –