检索数据
SELECT
【1】检索单个列
SELECT number
FROM accouts;
从表accounts中检索一个名为number的列
【2】检索多个列
SELECT number, phone
FROM accouts;
select后跟多个列名即可,列名之间以逗号分隔,最后一个列名后没有逗号
【3】检索所有列
使用(*)通配符
SELECT *
FROM accounts;
【4】检索不同的行
- DISTINCT
SELECT DISTINCT address
FROM accounts;
只返回address不同的列
DISTINCT应用于所有列,而不仅是前置它的列
【5】限制结果
- LIMIT
SELECT address
FROM accounts
LIMIT 5;
LIMIT 5指示返回不多于5行
SELECT address
FROM accounts
LIMIT 5,5;
LIMIT 5,5 表示返回从第5行开始的5行
LIMIT 检索出来的第一行为行0而不是行1.因此LIMIT 1 ,1 检索出来的是第二行而不是第一行
【6】完全限定的表名
上面所举的例子都是用的列名,而完全限定名就是同时使用表名和列名
SELECT accounts.address
FROM book_borrow_sys.accounts
LIMIT 5;
这里列名表名都用了完全限定
排序数据
- ORDER BY
【1】单个列排序
SELECT address
FROM accounts;
SELECT address
FROM accounts
ORDER BY address;
这两段代码输出的内容相同,只是第二段代码的输出结果按字母顺序排序
【2】多个列排序
SELECT address,sex
FROM accounts
ORDER BY address, sex;
多个列排序时,ORDER BY后跟多个列即可;排序顺序按照跟随的顺序,仅在多个行具有相同的address时,才按sex进行排序。
【3】指定排序方向
- DESC
OERDER BY默认按照升序排列(A到Z),加上关键字DESC进行降序排列
SELECT address
FROM accounts
ORDER BY address DESC;
DESC只对直接位于其前面的列名起作用,如果想对多个列进行降序排列,必须对每个列指定DESC关键字。