检索数据

1.SELECT语句

SQL语句是由简单的英语单词构成的。

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

最经常使用的SQL语句大概就是SELECT语句了。它的用途是从一个或多个表中检索信息。

PowerShell
关键字(keyword)
作为SQL组成部分的保留字。
关键字不能用作表或列的名字。
2.检索单个列
SQL
SELECT prod_name
FROM Products;
"SELECT `主流派` FROM blockbusters"
3.检索多个列

要想从一个表中检索多个列,仍然使用相同的SELECT语句。

唯一的不同是必须在SELECT关键字后给出多个列名,列名之间必须以逗号分隔。

SQL
SELECT prod_id, prod_name,prod_price
From Products;
"SELECT `主流派`,`次流派`,`其他流派` FROM blockbusters"
4.检索所有列

除了指定所需的列外,SELECT语句还可以检索所有的列而不必逐个列出它们。

在实际列名的位置使用星号(*)通配符可以做到这点

SQL
SELECT *
FROM products
"SELECT * FROM blockbusters"
5.检索不同的值

如果你不希望每个值每次都出现,该怎么办呢?

使用DISTINCT关键字,顾名思义,它指示数据库只返回不同的值

SQL
SELECT DISTINCT vend_id
FROM Products;
"SELECT DISTINCT `主流派` FROM blockbusters"

SELECT DISTINCT 告诉DBMS只返回不同(具有唯一性)的行且,不能部分使用DISTINCT

6.限制结果

SELECT语句返回指定表中所有匹配的行,很可能是每一行。

如果你只想返回第一行或者一定数量的行,该怎么办呢?

这是可行的,然而遗憾的是,各种数据库中的这一SQL实现并不相同。

在SQL Server中使用SELECT时,可以用TOP关键字来限制最多返回多少行

SQL
SELECT TOP 5 prod_name
FROM Products;
"SELECT TOP 5 Language FROM _songs  "

在MySQL、SQLite,需要使用LIMIT子句

SQL
SELECT prod_name
FROM Products
LIMIT 5;    
"SELECT DISTINCT `主流派` FROM blockbusters LIMIT 5 "

为了得到后面的5行数据,需要指定从那里开始以及检索的行数

SQL
SELECT prod_name
FROM Products
LIMIT 5 OFFSET 5;
"SELECT DISTINCT `主流派` FROM blockbusters LIMIT 5 OFFSET 5"

MySQL和SQLite可以把LIMIT 4 OFFSET 3 语句简化为LIMIT 3,4 。

使用这个语法,逗号之前的值对应OFFSET,逗号之后的值对应LIMIT,是反着的

7.使用注释

可以看到,SQL语句是由DBMS处理的指令。

如果你希望包括不进行处理和执行的文本,就可以使用注释

很多DBMS都支持各种形式的注释语法。

行内注释:

SQL
SELECT prod_name --这是一条注释
FROM products

另一种行内注释(但这种形式有些DBMS不支持):

SQL
#这是一条注释
SELECT prod_name
FROM Products;

你也可以进行多行注释,注释可以在脚本的任何位置停止和开始:

SQL
/*SELECT prod_name,vend_id
FROM Products;*/
SELECT prod_name
FROM Products;
订阅评论
提醒
0 评论
最旧
最新 最多投票
内联反馈
查看所有评论
滚动至顶部