1. 程式人生 > 其它 >【SQL基礎】【關鍵字大寫】條件查詢:比較、不等於、IN、為空、BETWEEN

【SQL基礎】【關鍵字大寫】條件查詢:比較、不等於、IN、為空、BETWEEN

〇、概述

1、內容介紹

條件查詢:比較、不等於、IN、為空、BETWEEN

2、建表語句

drop table if exists user_profile;
CREATE TABLE `user_profile` (
`id` int NOT NULL,
`device_id` int NOT NULL,
`gender` varchar(14) NOT NULL,
`age` int ,
`university` varchar(32) NOT NULL,
`gpa` float);
INSERT INTO user_profile VALUES(1,2138,'male',21,'北京大學
',3.4); INSERT INTO user_profile VALUES(2,3214,'male',null,'復旦大學',4.0); INSERT INTO user_profile VALUES(3,6543,'female',20,'北京大學',3.2); INSERT INTO user_profile VALUES(4,2315,'female',23,'浙江大學',3.6); INSERT INTO user_profile VALUES(5,5432,'male',25,'山東大學',3.8); INSERT INTO user_profile VALUES(6,2131,'
male',28,'北京師範大學',3.3);

一、基礎排序

1、查詢後排序

SELECT
    device_id,
    age
FROM user_profile
ORDER BY age ASC;

2、查詢後多列排序

SELECT
    device_id,
    gpa,
    age
FROM user_profile
ORDER BY 
    gpa ASC,
    age ASC;

3、查詢後降序排序

SELECT
    device_id,
    gpa,
    age
FROM user_profile
ORDER BY
    gpa DESC
, age DESC;

二、基礎操作符

1、查詢學校是北大的學生資訊【字串用單引號引起來】

SELECT
    device_id,
    university
FROM user_profile
where
    university='北京大學';

2、查詢年齡大於24的使用者資訊

SELECT
    device_id,
    gender,
    age,
    university
FROM user_profile
WHERE age>24;

3、查詢某個年齡段的使用者資訊

SELECT
    device_id,
    gender,
    age
FROM user_profile
WHERE age BETWEEN 20 and 23;

4、查詢除復旦大學的使用者資訊

方法1:使用NOT IN

SELECT
    device_id,
    gender,
    age,
    university
FROM user_profile
WHERE university 
NOT IN ('復旦大學');

方法2:!=

SELECT
    device_id,
    gender,
    age,
    university
FROM user_profile
WHERE university !='復旦大學';

5、用where過濾空值練習【不為空使用IS NOT NULL表示】

SELECT
    device_id,
    gender,
    age,
    university
FROM user_profile
WHERE age IS NOT NULL;

三、高階操作符

1、高階操作符練習(1)

找到男性且GPA在3.5以上(不包括3.5)的使用者

SELECT
    device_id,
    gender,
    age,
    university,
    gpa
FROM user_profile
WHERE 
    gender='male' 
and 
    gpa>3.5;

2、高階操作符練習(2)

學校為北大或GPA在3.7以上

SELECT
    device_id,
    gender,
    age,
    university,
    gpa
FROM user_profile
WHERE
    university='北京大學'
or
    gpa>3.7;

3、Where in 和Not in

SELECT
    device_id,
    gender,
    age,
    university,
    gpa
FROM user_profile
WHERE university IN('北京大學','復旦大學','山東大學');

4、操作符混合運用

SELECT
   device_id,
   gender,
   age,
   university,
   gpa
FROM user_profile
WHERE 
    (gpa>3.5 and university='山東大學')
    or
    (gpa>3.8 and university='復旦大學');

5、檢視學校名稱中含北京的使用者

SELECT
    device_id,
    age,
    university
FROM user_profile
WHERE university like '%北京%';