mysql 数据库检索,MySQL数据库之检索数据

本文涉及到以下知识点:

1.SELECT检索单个列、多个列和所有列

2.使用DISTINCT关键字剔除重复值、DISTINCT使用注意事项

3.使用LIMIT关键字对查询结果进行限制

1.从表中检索出单个列

SELECT column_name FROM table_name;

3个建议:

①:每一条SQL语句写完后,加上分号(;)作为结束,加比不加好

②:SQL语句是不区分大小写的,例如:

# 下面两个SQL语句效果是一样的

SELECT * FROM table_name;

select * from table_name;

但是建议对所有的SQL关键字使用大写,对所有的列和表名使用小写

③:当SQL语句较长时,可以用一行写完,但是建议分为多行写完,这样美观且便于阅读

2.检索多个列

当检索两个或两个以上时,列名之间用逗号分隔

SELECT column1,column2,column3 FROM table_name;

3.检索所有列

使用通配符星号(*),返回所有的列。

注意⭐:除非确定要返回所有的数据列,否则最好别使用通配符(*),因为这样会使检索速度变慢、降低应用程序的性能。

使用通配符(*)的另一个好处就是,可以检索出未知的列。

4.检索不同的行

检索出products表中所有供应商的id

SELECT vend_id FROM products;

输出:

9de0decf32e1

可以看出vend_id只有4个值,其他多事重复的。为剔除重复的值,需要使用DISTINCT关键字。

SELECT DISTINCT vend_id FROM products;

输出:

9de0decf32e1

🌈注意:不可部分使用DISTINCT。DISTINCT应用于所有的列,而不仅是前置它的列。请看下例:

SELECT DISTINCT vend_id,vend_price FROM products;

输出:

9de0decf32e1

可以看出prod_price没有重复的值,而prod_id有重复的值,这是因为prod_price要与prod_id对应。

5.限制结果

SELECT语句返回所有匹配的行,为了只返回符合条件的第一行或者前几行,可以使用关键字LIMIT。请看下例:

SELECT prod_name FROM products;

输出:

9de0decf32e1

使用LIMIT进行结果限制:

SELECT prod_name FROM products LIMIT 5;

输出:

9de0decf32e1

可以看到只返回前5行结果。

为了得到下一个5行,可以指定要检索的开始行和检索行数:

SELECT prod_name FROM products LIMIT 5,5;

输出:

9de0decf32e1

📝总结:

①:带一个值的LIMIT总是从第一行开始,给出的数字为返回的行数

②:带两个值的LIMIT,第一个值为开始行的位置,第二个值为返回的行数

🌈注意:

①:检索出来的结果,第一行的行号为0,第二行的行号为1,以此类推...

9de0decf32e1

栗子:

# 从第2行开始检索,返回1行

SELECT prod_name FROM products LIMIT 1,1;

当检索的行数超出实际有的行数时,只返回实际有的行数。如下:

SELECT prod_name FROM products LIMIT 10,5;

上面的语句要从第11行开始检索,返回第11行(含)后的5行,实际只有13行,所以只返回11行后的3行。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值