基本的SELECT语句

3. 基本的SELECT语句

3.1 SELECT...

SELECT 1; #没有任何子句
SELECT 7/3; #没有任何子句

 

3.2 SELECT ... FROM

复制代码
#语法:
SELECT 标识选择哪些列
FROM 标识从哪个表中选择

#选择全部列:
SELECT *
FROM employees;
复制代码

 

3.3列的别名

复制代码
#1.直接在列名后空格加别名
SELECT last_name  name
FROM employees;

#2.在列名和别名之间加入关键字AS
注:若AS后别名未用引号引起,别名间不可有空格
SELECT last_name AS name
FROM employees;

#3.别名使用双引号(以便在别名中包含空格或特殊的字符并区分大小写。)
SELECT last_name  "name"
FROM employees;
复制代码

 

3.4 去除重复行

#在SELECT语句中使用关键字DISTINCT去除重复行
SELECT DISTINCT department_id
FROM employees;

 

 

3.5着重号

复制代码
#错误的
mysql> SELECT * FROM ORDER;
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that
corresponds to your MySQL server version for the right syntax to use near 'ORDER' at
line 1

#正确的
mysql> SELECT * FROM `order`;
+----------+------------+
| order_id | order_name |
+----------+------------+
| 1 | shkstart |
| 2 | tomcat |
| 3 | dubbo |
+----------+------------+
3 rows in set (0.00 sec)

#注:我们需要保证表中的字段、表名等没有和保留字、数据库系统或常用方法冲突。如果真的相同,要在SQL语句中使用一对``(着重号)引起来。
复制代码

 

3.6显示表结构

使用DESCRIBE 或 DESC 命令,表示表结构。

DESCRIBE employees;
或
DESC employees;

其中,各个字段的含义分别解释如下:

Field:表示字段名称。

Type:表示字段类型。

Null:表示该列是否可以存储NULL值。

Key:表示该列是否已编制索引。

PRI表示该列是表主键的一部分;UNI表示该列是UNIQUE索引的一 部分;MUL表示在列中某个给定值允许出现多次。

Default:表示该列是否有默认值。

Extra:表示可以获取的与给定列有关的附加信息,例如AUTO_INCREMENT等。

 

3.7过滤表

复制代码
#语法:
SELECT 字段1,字段2
FROM 表名
WHERE 过滤条件

#使用WHERE 子句,将不满足条件的行过滤掉
#WHERE子句紧随 FROM子句
复制代码
SELECT employee_id, last_name, job_id, department_id
FROM employees
WHERE department_id = 50 ;
posted @ 2023-05-13 09:23  小刘每天都在加油鸭  阅读(76)  评论(0编辑  收藏  举报