SQL WHERE子句:指定查询条件
使用 SQL 从单个表或者多表联合查询数据时,可以使用 WHERE 子句指定查询条件。当给定查询条件时,只有满足条件的数据才会被返回。建议您使用 WHERE 子句来过滤记录,以获取必要的结果集。
WHERE 子句不仅可以用在 SELECT 语句中,还可以用在 UPDATE、DELETE 等语句中,我们将在后续章节中进行讲解。
现在要查询日访问量(uv)大于 800 万的网站,并且只返回 id、name、url 和 uv 四个字段,代码如下:
再如,查找日流量大于 500 万,并且名字里面包含字母 o 的网站,代码如下:
WHERE 子句不仅可以用在 SELECT 语句中,还可以用在 UPDATE、DELETE 等语句中,我们将在后续章节中进行讲解。
语法
WHERE 子句用于 SELECT 语句时的基本语法如下:
SELECT column1, column2, columnN
FROM table_name
WHERE condition
示例
现有一个存有客户信息的 website 表:+----+----------------+----------------------------+-----+-------+---------+---------+ | id | name | url | age | alexa | uv | country | +----+----------------+----------------------------+-----+-------+---------+---------+ | 1 | 百度 | https://www.baidu.com/ | 21 | 4 | 5010.5 | CN | | 2 | 淘宝 | https://www.taobao.com/ | 17 | 8 | 3996.75 | CN | | 3 | C语言中文网 | http://c.biancheng.net/ | 12 | 7923 | 11.62 | CN | | 4 | Google | https://www.google.com/ | 23 | 1 | 36474 | US | | 5 | GitHub | https://github.com/ | 13 | 95 | 216.3 | US | | 6 | Stack Overflow | https://stackoverflow.com/ | 16 | 48 | 592.2 | US | | 7 | Yandex | http://www.yandex.ru/ | 11 | 53 | 591.82 | RU | | 8 | VK | https://vk.com/ | 23 | 23 | 1206 | RU | +----+----------------+----------------------------+-----+-------+---------+---------+
现在要查询日访问量(uv)大于 800 万的网站,并且只返回 id、name、url 和 uv 四个字段,代码如下:
SELECT id, name, url, uv FROM website WHERE uv > 800;该语句将得到如下的结果:
+----+--------+-------------------------+---------+ | id | name | url | uv | +----+--------+-------------------------+---------+ | 1 | 百度 | https://www.baidu.com/ | 5010.5 | | 2 | 淘宝 | https://www.taobao.com/ | 3996.75 | | 4 | Google | https://www.google.com/ | 36474 | | 8 | VK | https://vk.com/ | 1206 | +----+--------+-------------------------+---------+
再如,查找日流量大于 500 万,并且名字里面包含字母 o 的网站,代码如下:
SELECT id, name, url, uv FROM website WHERE uv > 500 AND name LIKE '%o%';该语句将得到如下的结果:
+----+----------------+----------------------------+-------+ | id | name | url | uv | +----+----------------+----------------------------+-------+ | 4 | Google | https://www.google.com/ | 36474 | | 6 | Stack Overflow | https://stackoverflow.com/ | 592.2 | +----+----------------+----------------------------+-------+