SQL查询语句 是数据库操作的核心,用于从数据库中提取所需数据。将深入探讨SQL查询语句的几个关键方面,包括简单查询、FROM
子句、WHERE
子句及联合查询,帮助读者快速掌握查询的核心技巧。
1. 简单查询
简单查询包括选择列表、FROM子句和WHERE子句。选择列表用于指定查询的列,可选列名、星号(*)代表所有列,或表达式。
示例:
SELECT `nickname`, `email` FROM `testtable` WHERE `name` = '张三'
- 选择所有列:
sql SELECT * FROM `testtable`
- 选择部分列:
sql SELECT `nickname`, `email` FROM `testtable`
- 更改列标题:
sql SELECT 昵称=`nickname`, 电子邮件=`email` FROM `testtable`
- 删除重复行:使用
DISTINCT
关键字。sql SELECT DISTINCT `nickname`, `email` FROM `testtable`
- 限制返回行数:
sql SELECT TOP n [PERCENT] * FROM `testtable`
2. FROM 子句
FROM子句指定查询的表或视图,支持多表查询并可使用别名简化。
示例:
SELECT `username`, b.cityid FROM `usertable` a, `citytable` b WHERE a.cityid = b.cityid
- 指定别名:
sql SELECT * FROM `usertable` AS a, `citytable` AS b
- 嵌套查询:查询其他查询结果。
sql SELECT a.au_fname + a.au_lname FROM authors a, titleauthor ta, (SELECT `title_id`, `title` FROM `titles` WHERE `ytd_sales` > 10000) AS t WHERE a.au_id = ta.au_id AND ta.title_id = t.title_id
3. WHERE 子句
WHERE子句用于设定查询条件,可过滤数据。支持多种比较运算符,如 >, <, =, <>, LIKE。
示例:
SELECT * FROM `producttable` WHERE `price` > 20
- 复合条件 使用 AND, OR。
sql SELECT * FROM `producttable` WHERE `price` > 20 AND `stock` < 100>