SQL SELECT 查询语句


当您使用数据库时,查询数据是最常见任务之一。本教程我们将介绍如何使用基本的SQL SELECT语句从表中查询数据。

SQL SELECT 语句语法

1
2
3
4
5
6
7
SELECT column1,column2...
FROM table2,table2...
WHERE filter_condition
GROUP BY column1
HAVING group_condition
ORDER BY column1,column2 ASC | DESC
;

SQL SELECT 语句由几个子句组成:
SELECT:指定结果或结果集中要包含表中的哪些列
FROM:指定要查询的表,可以同时查询多个
WHERE:根据条件进行结果过滤
GROUP BY:根据公有列值对行进行分组
HAVING:用于与GROUP BY子句一起过滤不需要的组
ORDER BY:按一个或多个列对结果进行排序
;在命令行中,分号结束是必须的。

其中 SELECT子句是必须的,其他的子句如FROM, WHERE, HAVING, GROUP BY, ORDER BY是可选的。

从一个表中查询所有数据

在查询数据之前,我们要知道数据从哪个表来。 所以需要用到FROM子句。
*型号表示所有列。

1
2
SELECT *
FROM product ;

该查询要求Mysql数据库返回 product 表的所有行和所有列。

查询所有列还可以自己指定所有列 (可以用于调整结果顺序)

1
2
SELECT productid, category,name,descn
FROM product ;

选择表中某一列数据

要查询某一列的数据,在SELECT子句中指定该列的名称

1
2
SELECT productid
FROM product ;

要查询多列,则在列名之间使用逗号(,)隔开

1
2
SELECT productid,category
FROM product ;

带有其他元素的SQL SELECT语句

SQL SELECT子句不仅可以接受表的列名,还接受下面这些元素:

  • 字符串或数字
  • 表达式
  • SQL函数
  • 用户自定义的函数

查询字符串

字符串使用单引号或者双引号引起来,如果要换行使用\n
注意, 如果没有逗号分隔,两个字符串将会连接在一起

1
SELECT "hello","world", "hi" "itroad", "nice\nday"

查询表达式

1
SELECT 1 + 2

查询时使用SQL函数

下面的例子展示了如何使用SQL自带的字符串函数CONCAT(),该函数将两个或多个字符串组合为一个,以显示员工的全名:
我们使用了AS关键字,意思是结果作为fullname列称呼

1
2
SELECT CONCAT(lastname,',',firstname) AS fullname
FROM account

查询时使用用户自定义的函数

用法和使用SQL函数一样,我们将在介绍如何自定义函数的章节中再看如何使用用户自定义的函数


原文链接:https://codingdict.com/