位置:首頁(yè) > 軟件操作教程 > 數(shù)據(jù)分析 > MySQL > 問(wèn)題詳情

MySQL——子查詢(xún)

提問(wèn)人:劉旭39發(fā)布時(shí)間:2020-10-10

子查詢(xún)

  子查詢(xún)可以理解為 套查詢(xún).子查詢(xún)是一個(gè)Select語(yǔ)句.

  1 表達(dá)式的值與子查詢(xún)返回的單一值做比較

  語(yǔ)法:

  表達(dá)式 comparision [ANY|ALL|SOME](子查詢(xún))

  說(shuō)明:

  ANY 和SOME謂詞是同義詞,與比較運(yùn)算符(=,<,>,<>,<=,>=)一起使用.返回一個(gè)布爾

  值True或 False.ANY的意思是,表達(dá)式與子查詢(xún)返回的一系列的值逐一比較,只要其

  中的一次比較產(chǎn)生True結(jié)果,ANY測(cè)試的返回 True值(既Where子句的結(jié)果),對(duì)應(yīng)于

  該表達(dá)式的當(dāng)前記錄將進(jìn)入主查詢(xún)的結(jié)果中.ALL測(cè)試則要求表達(dá)式與子查詢(xún)返回的

  一系列的值的比較都產(chǎn)生 True結(jié)果,才回返回True值.

  例:主查詢(xún)返回單價(jià)比任何一個(gè)折扣大于等于25%的產(chǎn)品的單價(jià)要高的所有產(chǎn)品

  Select * FROM Products

  Where UnitPrice>ANY

  (Select UnitPrice FROM[Order Details] Where Discount>0.25)

  2 檢查表達(dá)式的值是否匹配子查詢(xún)返回的一組值的某個(gè)值

  語(yǔ)法:

  [NOT]IN(子查詢(xún))

  例:返回庫(kù)存價(jià)值大于等于1000的產(chǎn)品.

  Select ProductName FROM Products

  Where ProductID IN

  (Select PrdoctID FROM [Order DEtails]

  Where UnitPrice*Quantity>= 1000)

  3檢測(cè)子查詢(xún)是否返回任何記錄

  語(yǔ)法:

  [NOT]EXISTS (子查詢(xún))

  例:用EXISTS檢索英國(guó)的客戶(hù)

  Select ComPanyName,ContactName

  FROM orders

  Where EXISTS

  (Select *

  FROM Customers

  Where Country = 'UK' AND

  Customers.CustomerID= orders.CustomerID)

  1:使用SHOW語(yǔ)句找出在服務(wù)器上當(dāng)前存在什么數(shù)據(jù)庫(kù):

  mysql> SHOW DATABASES;

  2:2、創(chuàng)建一個(gè)數(shù)據(jù)庫(kù)MYSQLDATA

  mysql> Create DATABASE MYSQLDATA;

  3:選擇你所創(chuàng)建的數(shù)據(jù)庫(kù)

  mysql> USE MYSQLDATA; (按回車(chē)鍵出現(xiàn)Database changed 時(shí)說(shuō)明操作成功!)

  4:查看現(xiàn)在的數(shù)據(jù)庫(kù)中存在什么表

  mysql> SHOW TABLES;

  5:創(chuàng)建一個(gè)數(shù)據(jù)庫(kù)表

  mysql> Create TABLE MYTABLE (name VARCHAR(20), sex CHAR(1));

  6:顯示表的結(jié)構(gòu):

  mysql> DESCRIBE MYTABLE;

  7:往表中加入記錄

  mysql> insert into MYTABLE values ("hyq","M");

  8:用文本方式將數(shù)據(jù)裝入數(shù)據(jù)庫(kù)表中(例如D:/mysql.txt)

  mysql> LOAD DATA LOCAL INFILE "D:/mysql.txt" INTO TABLE MYTABLE;

  9:導(dǎo)入.sql文件命令(例如D:/mysql.sql)

  mysql>use database;

  mysql>source d:/mysql.sql;

  10:刪除表

  mysql>drop TABLE MYTABLE;

  11:清空表

  mysql>delete from MYTABLE;

  12:更新表中數(shù)據(jù)

  mysql>update MYTABLE set sex="f" where name='hyq';


繼續(xù)查找其他問(wèn)題的答案?

相關(guān)視頻回答
回復(fù)(0)
返回頂部