SQL Server可自動處理數值型別間的隱含轉換(如SMALLINT與INT比較),但字串與非字串型別互轉需顯式使用CONVERT()或CAST()。
SELECT CONVERT(CHAR(8), price) + ' US Dollars' FROM orders
CONVERT第一參數指定目標型別與長度,第二參數為來源欄位。若不轉換直接拼接BIT、DATETIME、INT、NUMERIC會報錯:Implicit conversion from datatype 'varchar' to 'bit' is not allowed。
SELECT 'The vote is ' + CONVERT(CHAR(1), vote) FROM opinion
-- 結果:The vote is 1 / The vote is 0
精確比對=只能匹配完整字串。若需「包含關鍵字」查詢,必須使用LIKE搭配通配符:
%:代表0個或多個任意字元_:代表單一任意字元[]:字元範圍,如[A-M]-- 僅匹配完全相等
SELECT site_name FROM site_directory WHERE site_desc = 'trading card'
-- 包含關鍵字(前後加%)
SELECT site_name FROM site_directory WHERE site_desc LIKE '%trading card%'
-- 首字母A-M分頁
SELECT site_name FROM site_directory WHERE site_name LIKE '[A-M]%'
注意:LIKE無法查詢二進位格式資料(如Word文檔),此時需使用全文索引。