【MySQL】基本的select语句

1.1 SQL分类

  • DDL(数据定义语言):用来创建、删除、修改数据库和数据表的结构。
    • 主要语句:create、drop(删结构)、alter等。
  • DML(数据操作语言):用于添加、删除、更新和查询数据库记录,并检查数据完整性。
    • 主要语句:insert、delete(删记录)、update、select等。
  • DCL(数据控制语言):用于定义数据库、表、字段、用户的访问权限和安全级别
    • 主要语句:grant、revoke、commit、rollback、savepoint等。

1.2 语法规则

  • 每条命令以;或\g或\G结束
  • 列的别名,尽量使用双引号,而且不建议省略as。
  • 建议
    • 数据库名、表名、表别名、字段名、字段别名等都小写
    • SQL关键字、函数名、绑定变量等都大写
    • 字符串使用单引号,别名使用双引号
  • MySQL在windows环境下是大小写不敏感的
  • MySQL在linux环境下是大小写敏感的

1.3注释

单行注释:#注释文字(MySQL特有的方式)
单行注释:-- 注释文字(--后面必须包含一个空格。)
多行注释:/* 注释文字 */

1.4 Select语句

1.数据导入指令

可以在命令行登录后导入数据

source d:\mysqldb.sql

2.SELECT

SELECT 1;
SELECT 9/2;
SELECT * FROM departmenms;		#选中所有列
SELECT department_id,location_id FROM departments;

3.列的别名

使用AS

SELECT last_name AS name,commission_pct comm 
FROM employees;

省略AS,使用双引号(可以包含空格)

SELECT last_name "Name",salary*12 "Annual Salary"
From employees;

4.去重DISTINCT

查询结果中不会有department_id重复的数据。
DISTINCT要写在所有列名的前面,否则会报错,多个列名时,是对所有列名的组合进行去重。

SELECt DISTINCT department_id
FROM employees;

image

5.空值参与运算

所有运算符或列值遇到null值,运算的结果都为null

SELECT 
	employee_id,salary,commission_pct,12*salary*(1+commission_pct) "annual_sal"
FROM employees;

image

6.着重号

表名、字段名等和保留字、数据库系统或常用函数冲突时会报错

SELECT * FROM ORDER;		#报错
SELECT * FROM `ORDER`;		#正确的

7.查询常数

SELECT '卡拉肖克' AS corporation,last_name FROM employees;

image

8.显示表结构

DESC employees;
或
DESCRIBE employees;

image

9.过滤数据WHERE

SELECT employee_id,last_name,job_id,department_id
FROM employees
WHERE department_id=90;

image

posted @ 2022-06-24 11:15  植树chen  阅读(146)  评论(0编辑  收藏  举报