大小寫處理函數

LOWER、UPPER 與 INITCAP 三者都是大小寫轉換函數。
  • LOWER:將大小寫混合的字元字串,或全部大寫的字元字串,轉換成全部小寫
  • UPPER:將大小寫混合的字元字串,或全部小寫的字元字串,轉換成全部大寫
  • INITCAP:將每個字的第一個字母轉換成大寫,而其他字母則轉換成小寫
SELECT 'The job id for '||UPPER(last_name)||' is ' ||LOWER(job_id) AS "EMPLOYEE DETAILS" FROM   employees;















顯示員工 Higgins 的員工編號、名稱與部門編號:
SELECT employee_id, last_name, department_id FROM employees WHERE last_name = 'higgins';


no rows selected


SELECT employee_id, last_name, department_id FROM employees WHERE LOWER(last_name) = 'higgins';




以上範例顯示員工 Higgins 的員工編號、姓名與部門編號。
第一句 SQL 的 WHERE 子句,將員工姓名指定為 higgins。因為 EMPLOYEES 表格中 的所有資料都是以適當的大小寫儲存,所以 higgins 這個名稱在表格中找不到相符的項目, 而且不會選取資料列。
第二句 SQL 的 WHERE 子句,指定將 EMPLOYEES 表格中的員工名稱與 higgins 做比 較,並將 LAST_NAME 資料欄轉換為小寫以供比較。由於這兩個名稱現在都是小寫,所以會找 到一個相符項目,而且會選取一個資料列。WHERE 子句可重新改寫以產生相同的結果,方法如 下:
          ...WHERE last_name = 'Higgins'
由於被儲存在資料庫中,所以輸出中出現了名稱。若想只以第一個字母大寫來顯示此名稱,請 在 SELECT 敘述句使用 UPPER 函數。

SELECT employee_id, UPPER(last_name), department_id FROM employees
WHERE INITCAP(last_name) = 'Higgins';

沒有留言:

張貼留言