03 基本的SELECT语句

1 SQL概述

1.1 SQL背景知识

1.2 SQL语言排行榜

1.3 SQL分类

 

2 SQL语言的规则与规范

2.1 基本规则

● SQL可写一行或多行。

● 命令结束标志: \g 、\G、;

● 关键字不能缩写、分行

● 关于标点符号:

  • 字符串型、日期时间可使用‘ ’表示
  • 列的别名 使用“ ” , 可用 as

2.2 SQL大小写规范

● Windows:大小写不敏感

● Linux:大小写敏感

  • 区分大小写:数据库名表名表的别名变量名
  • 忽略大小写:关键字、函数名、列名(字段名)、列的别名

● 推荐采用统一的书写规范:

  • 数据库名、表名、表别名、字段名、字段别名——小写
  • SQL关键字、函数名、绑定变量——大写

2.3 注释

# 注释文字 (MySQL独有)
-- 注释文字
/* 注释文字 */

2.4 命名规则

2.5 数据导入指令

命令行客户端登录mysql,使用source指令导入

mysql> source d:\mysqldb.sql

 

3 基本的SELECT语句

3.1 SELECT...

SELECT 1;    #  1
SELECT 9/2;  #  4.5

3.2 SELECT ... FROM

SELECT 列名
FROM 表名

3.3 列的别名

SELECT last_name AS name, commission_pct comn, salary*12 "Annual Salary"
FROM employees;

3.4 DISTINCT-去除重复行

● 不适用DISTINCT,会默认返回全部行,包括重复行。

SELECT DISTINCT department_id
FROM employees;

 注意:

● DISTINCT 需在所有列名前面。

● DISTINCT 是对所有列名的组合去重。

3.5 空值参与运算

所有运算符、列值遇到null值,结果为:null

注意:

  • 空值 ≠ 空字符串
  • 空字符串 长度为0
  • 空值        长度为空
  • 空值是占用空间的

3.6 着重号

mysql> SELECT * FROM `ORDER`;
mysql> SELECT * FROM `order`;

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

3.7 查询常数

SELECT '尚硅谷' as corporation, last_name FROM employees;

 

4 显示表结构

命令:DESCRIBE   /   DESC

DESCRIBE employees;
或
DESC employees;

 

5 过滤数据

● WHERE 过滤条件

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

 

posted @ 2021-12-20 00:11  白森  阅读(65)  评论(0编辑  收藏  举报