#進階2:條件查詢 /* 語法: SELECT 查詢列表 FROM 表名 WHERE 篩選條件; 分類: 一、按條件表達式篩選 條件運算符:> < = <> >= <= 二、按邏輯表達式篩選 邏輯運算符: 作用:用於連接條件表達式 && || ! and or NOT 三、模糊查詢 LIKE beween AND in is NULL */ #一、按條件表達式篩選 #案例1:查詢工資大於12000 SELECT * FROM employees WHERE salary > 12000; #案例2:查詢部門標號不等於90號的員工名和部門編號 SELECT last_name, department_id FROM employees WHERE department_id <> 90; #二、按邏輯表達式篩選 #案例1:查詢工資在10000-20000之間的員工名、工資以及獎金 SELECT last_name, salary, commission_pct FROM employees WHERE salary >= 10000 AND salary <= 20000; #案例2:查詢部門編號不是在90到110之間,或者工資高於15000的員工信息 SELECT * FROM employees WHERE NOT ( department_id >= 90 AND department_id <= 110 ) OR salary >= 15000; #三、模糊查詢 /* LIKE 特點:①一般和通配符搭配使用 通配符 % 任意多個字符,包含0個字符 _任意單個字符 BETWEEN AND in is NULL| IS NOT NULL */ #案例1:查詢員工名中包含字符a 的員工信息 SELECT * FROM employees WHERE last_name LIKE '%a%'; #案例2:查詢員工名中包含字符a的員工信息 SELECT last_name, salary FROM employees WHERE last_name LIKE '__n_l%'; #案例3:查詢員工名中第二個字符為_的員工名 SELECT last_name FROM employees WHERE last_name LIKE '_\_%'; #--------------------------------------------- #2 between AND /* ①使用between and可以提高語句的簡潔度 ②包含臨界值 ③兩個臨界值不要調換順序*/ #案例4:查詢員工標號在100到120之間的員工信息 SELECT * FROM employees WHERE employee_id BETWEEN 100 AND 120; #3.IN /* 含義:判斷某字段的值是否屬於in列表中 的某一項 特點:① 使用in提高語句簡潔度 ②in列表的值類型必須一致或兼容 */ #案例:查詢員工的公眾編號是IT_PROG、AD_PRES中的一個員工名和工種編號 SELECT last_name, job_id FROM employees WHERE job_id IN ( 'IT_PROG', 'AD_PRES', 'AD_VP' ); #--------------------- #4.is NULL #案例1.查詢沒有獎金的員工名和獎金率 SELECT last_name, commission_pct FROM employees WHERE commission_pct IS NULL