無法在SQL Server 中比較或排序文字資料
使用SQL Server 時,您可能會遇到錯誤,指出text、ntext 、影像資料類型不能進行比較或排序,除非使用IS NULL 或LIKE 運算子。此錯誤通常在嘗試比較或排序非字元資料(例如電子郵件或其他基於文字的列)時發生。
要修正此問題,請考慮以下選項:
將資料轉換為VARCHAR:
如果您的資料主要基於字符,建議更改電子郵件的資料類型欄位轉換為VARCHAR(100) 或NVARCHAR(100)。這將允許正確的比較和排序。
明確轉換資料:
如果變更資料型別不可行,您可以將TEXT 資料列轉換為VARCHAR 或NVARCHAR在查詢本身內:
SELECT CAST(email AS NVARCHAR(100)) email, COUNT(CAST(email AS NVARCHAR(100))) AS NumOccurrences FROM Booking GROUP BY CAST(email AS NVARCHAR(100)) HAVING COUNT(CAST(email AS NVARCHAR(100))) > 1
此明確轉換可確保該列被視為字元資料進行比較和排序目的。
其他資源:
以上是為什麼無法在 SQL Server 中比較或排序文字資料?的詳細內容。更多資訊請關注PHP中文網其他相關文章!