MySQL必知必会1-5章总结

describe customers; 是show columns from customers;的一种快捷方式。

show status,用于显示广泛的服务器状态信息。

show create database和show create table,分别用来显示创建特定数据库或表的MySQL语句。

show grants用来显示授予用户(所有用户或者是特定用户)的安全权限。

show errors 和show warnings,用来显示服务器错误或者是警告信息。

SQL语句是由简单的英文单词构成的,这些单词称为关键字,每个SQL语句都是又一个或者是多个关键字组成的。

select语句
select语句的作用是从一个或者多个表中检索信息。使用时至少给出两条信息——想选择什么,以及从什么地方进行选择。
如果没有明确排序查询结果,则返回的数据的顺序没有特殊含义,可能是数据被添加到表中的顺序,也可能不是。但只要返回相同数目的行,就是正常的。

SQL语句不分大小写,SELECT和select和Select是相同的。
许多SQL开发人员喜欢对所有的SQL关键字使用大写,而对所有的列和表名使用小写,使代码更容易阅读和维护。
在用select 选择多个列时,一定要在列名之间加上逗号,当然最后一个列名之后不加。
select prod_id,prod_name,prod_price from products;
SQL语句一般是返回原始的无格式的数据。数据的格式化是一个表示问题,而不是一个检索问题。表示一般是在显示该数据的应用程序中规定,一般很少使用检索出的原始数据。
检索所有的列而不必逐个表示它们:

select * from products;

如果给定一个通配符(*),则返回表中的所有的列。一般不使用,因为检索不需要的列通常会降低检索和应用程序的性能。优点是能检索出名字未知的列。

distinct
select distinct vend_id from products;
告诉MySQL只返回不同的vend_id行

limit

select prod_name from products limit 5;

limit 5指示MySQL返回不多于5行

为了得出下一个5行,我们可以使用

select prod_name from products limit 5,5;

limit 5,5指示MySQL返回从行5开始的5行。第一个数为开始位置,第二个数为要检索的行数。带一个值得limit总是从第一行开始,给出的数为返回的行数,带两个值的limit可以指定从行号为第一个值得位置开始。
MySQL 5支持limit的另外一种替代语法,

limit 4 offset 3 等同于 limit 3,4

排序检索数据
关系数据库设计理论认为,如果不明确规定排序顺序,则不应该假定检索出的数据的顺序有意义。
order by 子句取一个或者是多个列的名字,据此对输出进行排序。
为了按照多个列排序,只要指定列名,列名之间用逗号隔开即可。此时排序完全按照所规定的顺序进行,如果pro_price列中所有的值是唯一的,则不会按照prod_name排序。
为了进行降序排序,必须指定使用DESC关键字。
···order by prod_price desc;
下面的例子以降序排序产品的(最贵的在前面),然后再对产品名排序:
···order by prod_price DESC,prod_name;
DESC关键字只应用到直接位于其前面的列名,如果想在多个列上进行降序排序,必须对每个列指定DESC关键字。

一个实际用例:使用order by和limit的组合,找出最昂贵物品的值:

select prod_price from products order by prod_price DESC limit 1;
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值