日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

07 数据查询语言(DQL)--行选择(WHERE)

發(fā)布時(shí)間:2023/12/31 编程问答 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 07 数据查询语言(DQL)--行选择(WHERE) 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

目錄

一、行選擇與列選擇的語(yǔ)法區(qū)別(有無(wú)where):

列選擇:select 列名、、、from 表名;

行選擇:select 列名、、、from 表名 where條件;

二、用選擇限制行:

三、MySQL中的比較條件:

1.常規(guī)比較條件:

2.其他比較條件:

2.1.BETWEEN...AND...:

2.2.IN(set):

2.3.LIKE:

2.4.IS NULL:

3.邏輯條件:AND、OR、NOT

4.優(yōu)先規(guī)則:

5.運(yùn)算符總結(jié):

四、使用ORDER BY排序

1.注意:

2.SELECT 語(yǔ)句的執(zhí)行順序如下:

3.使用別名排序(用列別名排序):

4.多列排序:


一、行選擇與列選擇的語(yǔ)法區(qū)別(有無(wú)where):

列選擇:select 列名、、、from 表名;

行選擇:select 列名、、、from 表名 where條件;

二、用選擇限制行:

用 WHERE 子句限制從查詢返回的行一個(gè) WHERE 子句包含一個(gè)

必須滿足的條件,WHERE 子句緊跟著 FROM 子句如果條件是

true,返回滿足條件的行。

語(yǔ)法:SELECT * | 投影列 FROM 表名 WHERE 選擇條件;

例:select department_name,location_id from departments where departments_id = 4;

表示:查詢 departments 表中部門 ID 為 90 的部門名稱與工作地ID

三、MySQL中的比較條件:

1.常規(guī)比較條件:

?

符號(hào)!=也能表示不等于條件;

例:select last_name,salary from employees where salary<>5000;

表示:查詢 employees 表中員工薪水不等于 5000 的員工的姓名與薪水;

2.其他比較條件:

2.1.BETWEEN...AND...:

可以用 BETWEEN...AND... 范圍條件顯示基于一個(gè)值范圍的行。指定的范圍,包含一個(gè)下限和一個(gè)上限

例:select employee_id,last_name,salary from employees where salary between 3000 and 8000;

表示:查詢 employees 表,薪水在 3000-8000 之間的雇員ID、名字與薪水。

2.2.IN(set):

使用IN成員條件測(cè)試在列表中的值

例:select employee_id,last_name,salary from employees where salary in(5000,6000,8000);

表示:查詢 employees 表,找出薪水是 5000,6000,8000 的雇員ID、名字與薪水。

2.3.LIKE:

1.使用LIKE條件執(zhí)行有效搜索串值的通配符搜索

2.搜索條件既可以包含文字也可以包含數(shù)字(數(shù)字只字符串型,非整數(shù)型)

占位符:%表示零個(gè)或多個(gè)字符

? ? ? ? ? ? ? ? _表示一個(gè)字符

注意 :

在LIKE語(yǔ)句中,%表示零個(gè)或多個(gè)字符,_表示一個(gè)字符

例:select last_name from employees where last_name like %e%;

表示:查詢 employees 中雇員名字字母含有 e 的雇員名字

例:select last_name from employees where last_name like _e%;

表示:查詢 employees 中雇員名字第二個(gè)字母是 e 的雇員名字。

2.4.IS NULL:

用IS NULL操作來(lái)測(cè)試空值,NULL條件,包括IS NULL條件和IS NOT NULL 條件

IS NULL 條件用于空值測(cè)試。空值的意思是難以獲得的、未指定的、未知的或者不適用的。因此,?不能用 = ,因?yàn)?null 不能等于或不等于任何值。

例:select employee_id,last_name,commission_pct from employees where commission_pct is null;

表示:找出 emloyees 表中那些沒(méi)有傭金的雇員雇員ID、名字與傭金。

例:select employee_id,last_name,commission_pct from employees where commission_pct is not null;

表示:找出 employees 表中那些有傭金的雇員ID、名字與傭金。

3.邏輯條件:

?

邏輯條件組合兩個(gè)比較條件的結(jié)果來(lái)產(chǎn)生一個(gè)基于這些條件的單個(gè)的結(jié)果,或者逆轉(zhuǎn)一個(gè)單個(gè)條件的結(jié)果。當(dāng)所有條件的結(jié)果為真時(shí),返回行。

SQL 的三個(gè)邏輯運(yùn)算符是:

AND

OR

NOT

可以在 WHERE 子句中用 AND 和 OR 運(yùn)算符使用多個(gè)條件。

例:select last_name,salary from employees where salary = 8000 and last_name like '%e%';

表示:查詢 employees 表中雇員薪水是 8000 的并且名字中含有e 的雇員名字與薪水。

例:select last_name,salary from employees where salary = 8000 or last_name like '%e%';

表示:查詢 employees 表中雇員薪水是 8000 的或者名字中含有e 的雇員名字與薪水。

例:select last_name from employees where last_name not like '%u%';

表示:查詢 employees 表中雇員名字中不包含 u 的雇員的名字。

例:select?last_name from?employees where?last_name not?like?'%u%';

查詢 employees 表中雇員名字中不包含 u 的雇員的名字。

4.優(yōu)先規(guī)則:

?

5.運(yùn)算符總結(jié):

  • 算術(shù)運(yùn)算符用于整型、浮點(diǎn)型數(shù)據(jù)類型,進(jìn)行加減乘除;
  • LIKE用于模糊查詢,只能用于字符型,不能用于數(shù)組查詢;
  • 四、使用ORDER BY排序

    ?

    1.注意:

    在一個(gè)不明確的查詢結(jié)果中排序返回的行。ORDER BY 子句用于排序。如果使用了 ORDER BY 子句,它必須位于 SQL 語(yǔ)句的最后。

    2.SELECT 語(yǔ)句的執(zhí)行順序如下:

    FROM 子句

    WHERE 子句

    SELECT 子句

    ORDER BY 子句(即查詢出結(jié)果后再對(duì)結(jié)果進(jìn)行排序)

    例:1.select employee_id,last_name,salary from employees order by salary;(默認(rèn)升序排序ASC)

    2.select employee_id,last_name,salary from employees order by salary?asc;

    表示:查詢 employees 表中的所有雇員,顯示他們的ID、名字與薪水,并按薪水升序排序。

    例:select employee_id ,last_name from employees order by last_name desc;

    表示:查詢 employees 表中的所有雇員,顯示他們的ID與名字,并按雇員名字降序排序

    3.使用別名排序(用列別名排序):

    例:select employee_id,last_name, 12*salary annsal from employees order by annsal desc;

    表示:顯示雇員ID,名字。計(jì)算雇員的年薪,年薪列別名為annsal,并對(duì)該列進(jìn)行降序排序

    4.多列排序:

    多列排序按ORDER BY 列表的順序就是排序的順序;并且可以排序一個(gè)不在SELECT列表中的列;

    例:select department_id ,salary from employees order by department_id asc,salary desc;

    表示:以升序排序顯示department_id列后,再根據(jù)前一個(gè)排序的基礎(chǔ)上,以降序排序顯示salary列;

    總結(jié)

    以上是生活随笔為你收集整理的07 数据查询语言(DQL)--行选择(WHERE)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

    如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。