使用的工具:SQLiteSpy
使用的数据库:作者网站提供的sqlite数据库
1.SELECT语句
它的用途是从一个或多个表中检索信息,作为SQL中的关键字(keyword),不能用作表或列的名字
2.检索单个列
```
输入
SELECT prod_name
FROM Products;
```
```
输出
prod_name
-------------------
Fish bean bag toy
Bird bean bag toy
Rabbit bean bag toy
8 inch teddy bear
12 inch teddy bear
18 inch teddy bear
Raggedy Ann
King doll
Queen doll
```
3.检索多个列
与上面的代码不同的是必须在SELECT关键字后给出多个列名,列名之间必须以逗号分隔。
输入
SELECT prod_id,prod_name,prod_price
From Products
输出
输出▼
prod_id prod_name prod_price
--------- -------------------- ----------
BNBG01 Fish bean bag toy 3.4900
BNBG02 Bird bean bag toy 3.4900
BNBG03 Rabbit bean bag toy 3.4900
BR01 8 inch teddy bear 5.9900
BR02 12 inch teddy bear 8.9900
BR03 18 inch teddy bear 11.9900
RGAN01 Raggedy Ann 4.9900
RYL01 King doll 9.4900
RYL02 Queen dool 9.4900
注意:在最后一个列名后不能加逗号,否则将出错
4.检索所有列
SELECT 语句还可以检索所有的列而不必逐个列出它们。
在实际列名的位置使用星号(*)通配符可以做到这点。
输入
SELECT *
From Products
输出
表中所有列
注意: 1.缺点:一般而言,除非你确实需要表中的每一列,否则最好别使用*通配符。
虽然使用通配符能让你自己省事,不用明确列出所需列,但检索不需
要的列通常会降低检索和应用程序的性能。
2.优点:当你不知道需要查询的列的具体名字时。
5.检索不同的值
当你查询一个列的名字时,会返回所有的行。比如你需要查询products表中所有供应商的ID
输入
SELECT vend_id
From Products
输出
vend_id
----------
BRS01
BRS01
BRS01
DLL01
DLL01
DLL01
DLL01
FNG01
FNG01
SELECT 语句返回 9 行(即使表中只有 3 个产品供应商),因为 products
表中有 9 种产品。
输入
SELECT DISTINCT vend_id
From Products
输出
vend_id
----------
BRS01
DLL01
FNG01
注意:DISTINCT关键字作用于所有的列,不仅仅是跟在其后的那一列
6.限制结果
SELECT 语句返回指定表中所有匹配的行,很可能是每一行。如果你只想
返回第一行或者一定数量的行,则使用LIMIT(SQLite形式)
查询五行产品名
输入▼
SELECT prod_name
FROM Products
LIMIT 5;
从第五行开始查询五行产品名
输入▼
SELECT prod_name
FROM Products
LIMIT 5 OFFSET 5;
注意:LIMIT 1 OFFSET 1
会检索第二行而不是第一行
7.注释
直接贴代码吧
输入▼
SELECT prod_name -- 这是一条注释
FROM Products;
(-- 后的就是注释)
输入▼
# 这是一条注释
SELECT prod_name
FROM Products;
(#后的都是注释)
输入▼
/* SELECT prod_name, vend_id
FROM Products; */
SELECT prod_name
FROM Products;
(/*开始到*/结束)