第
2
课 检索数据
为了使用
SELECT
检索表数据,必须至少给出两条信息——想选择什么,以及从什么地方选择。
2.2 检索单个列
输入▼
SELECT
prod_name
FROM
Products;
|
上述语句利用SELECT语句从Products表中检索一个名为prod_name的列。所需的列名写在SELECT关键字之后,FROM关键字指出从哪个表中检索数据。
提示:如果没有明确排序查询结果,则返回的数据没有特定的顺序。
提示:结束SQL语句——多条SQL语句必须以分号(;)分隔。
提示:使用空格——在处理SQL语句时,其中所有空格都被忽略。
提示:SQL语句不区分大小写,
2.3 检索多个列
仍然使用相同的SELECT语句。唯一的不同是必须在SELECT关键字后给出多个列名,列名之间必须以逗号分隔。但最后一个列名后不加逗号,如果在最后一个列名后加了逗号,将出现错误。
输入▼
SELECT prod_name,prod_id,prod_price
FROM Products;
|
2.4 检索所有列
输入▼
SELECT
*
FROM Products;
|
2.5 检索不同的值
SELECT语句返回所有匹配的行。但是,如果你不希望每个值每次都出现,该怎么办呢?例如,你想检索products表中所有产品供应商的ID:
输入▼
SELECT vend_id
FROM Products;
|
输出▼
vend_id
---------
BRS01
BRS01
DLL01
DLL01
DLL01
DLL01
FNG01
FNG01
|
如上,SELECT语句返回8行(即使表中只有3个产品供应商),
输入▼
SELECT
DISTINCT
vend_id
FROM Products;
|
输出▼
vend_id
---------
BRS01
DLL01
FNG01
|
警告:不能部分使用DISTINCT
DISTINCT关键字作用于所有的列,不仅仅是跟在其后的那一列。例如,你指定SELECT DISTINCT vend_id, prod_price,除非指定的两列完全相同,否则所有的行都会被检索出来。
2.6 限制结果
如果你只想返回第一行或者一定数量的行,该怎么办呢?这是可行的,然而遗憾的
是,各种数据库中的这一SQL实现并不相同。
2.7 使用注释
目的:1)这些注释需要嵌入在SQL脚本中,但显然不能进行实际的DBMS处理。
2)是暂时停止要执行的SQL代码。如果你碰到一个长SQL语句,而只想测试它的一部分,那么
应该注释掉一些代码,以便MariaDB将其视为注释而加以忽略
输入▼
SELECT prod_name
-- 这是一条注释
FROM Products;
|
# 这是一条注释
SELECT prod_name
FROM Products;
|
多行注释:
/* SELECT prod_name, vend_id
FROM Products; */
注释从/*开始,到*/结束,/*和*/之间的任何内容都是注释。
SELECT prod_name
|