零基础入门 SQL 系列之(一)查询数据

查询单列

SELECT prod_name 
FROM products;

查询多列

SELECT prod_id, vend_id 
FROM products;

各个列之间以逗号分隔,最后一列的后面不加逗号。

查询所有列

SELECT prod_id, vend_id, prod_name, prod_price, prod_desc FROM products;

除了列出所有的列名之外,我们还可以使用 * 号通配符来做到这点。

SELECT * 
FROM products;

一般而言,除非需要表中的每一列,否则最好不要使用 * 通配符。因为查询不需要的列通常会降低查询和应用程序的性能。「阿里java开发手册」中也明确指出,在表查询中,一律不要使用 * 作为查询的字段列表,需要哪些字段必须明确写明。

去重

前面的查询中,SELECT 语句会返回所有匹配的行,但是,有时候我们不希望每个值每次都出现。这时可以使用 DISTINCT 关键字进行去重,顾名思义,它表示数据库只返回不同的值。

SELECT DISTINCT vend_id 
FROM products;

DISTINCT 关键字作用于所有的列,不仅仅是跟在其后的那一列。例如:

SELECT DISTINCT vend_id, prod_price 
FROM products;

DISTINCT 关键字作用于多列时,要放在所有要查询的列的最前面,不可以放在中间位置。

限制每次返回的记录数

有时候,我们并不想一次返回所有的结果,而是返回一定数量的记录。我们可以使用 LIMIT 子句来实现这一目的。

SELECT prod_name 
FROM products LIMIT 5;

LIMIT 子句默认从第 0 行开始,我们还可以指定从哪行开始以及返回的行数。

SELECT prod_name 
FROM products 
LIMIT 5 OFFSET 5;

注释

随着 SQL 语句越来越复杂,我们需要添加一些注释,便于自己以及别人参考。有两种不同类型的注释:

  • 单行注释,和 SQL 语句在同一行。
SELECT prod_name -- 这是一条注释
FROM products;
  • 多行注释
/*
这是一条注释
这是一条注释
这是一条注释
*/
SELECT prod_name 
FROM products;

小结

  • 使用 SELECT 语句检索单个列、多个列以及所有表列。
  • 如何返回不同的值,如何注释代码。
  • 如何限制结果集返回的数量

备注:示例中用到的表和数据可以通过链接(https://github.com/songw/sql)下载。

本系列目录:
零基础入门 SQL 系列之(一)查询数据
零基础入门 SQL 系列之(二)排序
零基础入门 SQL 系列之(三)过滤数据
零基础入门 SQL 系列之(四)内置函数
零基础入门 SQL 系列之(五)数据汇总
零基础入门 SQL 系列之(六)表连接
零基础入门 SQL 系列之(七)组合
零基础入门 SQL 系列之(八)插入、更新、删除
零基础入门 SQL 系列之(九)创建和操作表
零基础入门 SQL 系列之(十)视图

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值