位置:首页 > 软件操作教程 > 数据分析 > MySQL > 问题详情

MySQL——子查询

提问人:刘旭39发布时间:2020-10-10

子查询

  子查询可以理解为 套查询.子查询是一个Select语句.

  1 表达式的值与子查询返回的单一值做比较

  语法:

  表达式 comparision [ANY|ALL|SOME](子查询)

  说明:

  ANY 和SOME谓词是同义词,与比较运算符(=,<,>,<>,<=,>=)一起使用.返回一个布尔

  值True或 False.ANY的意思是,表达式与子查询返回的一系列的值逐一比较,只要其

  中的一次比较产生True结果,ANY测试的返回 True值(既Where子句的结果),对应于

  该表达式的当前记录将进入主查询的结果中.ALL测试则要求表达式与子查询返回的

  一系列的值的比较都产生 True结果,才回返回True值.

  例:主查询返回单价比任何一个折扣大于等于25%的产品的单价要高的所有产品

  Select * FROM Products

  Where UnitPrice>ANY

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

  2 检查表达式的值是否匹配子查询返回的一组值的某个值

  语法:

  [NOT]IN(子查询)

  例:返回库存价值大于等于1000的产品.

  Select ProductName FROM Products

  Where ProductID IN

  (Select PrdoctID FROM [Order DEtails]

  Where UnitPrice*Quantity>= 1000)

  3检测子查询是否返回任何记录

  语法:

  [NOT]EXISTS (子查询)

  例:用EXISTS检索英国的客户

  Select ComPanyName,ContactName

  FROM orders

  Where EXISTS

  (Select *

  FROM Customers

  Where Country = 'UK' AND

  Customers.CustomerID= orders.CustomerID)

  1:使用SHOW语句找出在服务器上当前存在什么数据库:

  mysql> SHOW DATABASES;

  2:2、创建一个数据库MYSQLDATA

  mysql> Create DATABASE MYSQLDATA;

  3:选择你所创建的数据库

  mysql> USE MYSQLDATA; (按回车键出现Database changed 时说明操作成功!)

  4:查看现在的数据库中存在什么表

  mysql> SHOW TABLES;

  5:创建一个数据库表

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

  6:显示表的结构:

  mysql> DESCRIBE MYTABLE;

  7:往表中加入记录

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

  8:用文本方式将数据装入数据库表中(例如D:/mysql.txt)

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

  9:导入.sql文件命令(例如D:/mysql.sql)

  mysql>use database;

  mysql>source d:/mysql.sql;

  10:删除表

  mysql>drop TABLE MYTABLE;

  11:清空表

  mysql>delete from MYTABLE;

  12:更新表中数据

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


继续查找其他问题的答案?

相关视频回答
回复(0)
返回顶部