ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

第03章_基本的SELECT语句

2022-05-15 12:00:51  阅读:186  来源: 互联网

标签:语句 03 salary employees employee department id SELECT


# 1.SQL的分类
/*
DDL:数据定义语言。CREATE\ALTER\DROP\RENAME\TRUNCATE

DML:数据操作语言。INSERT\DELETE\UPDATE\SELECT

DCL:数据控制语言。COMMIT\ROLLBACK\SAVEPOINT\GRANT\REVOKE
*/

#2.导入现有的数据表、表的数据。
/*
方式1:source 文件的全路径名
举例:source E:\BaiduNetdiskDownload\atguigudb.sql;

方式2:基于具体的图形化界面的工具可以导入数据
比如:SQLyog中,选择“工具”--“执行sql脚本”--选中xxx.sql即可。
*/
SELECT * FROM employees;

# 1. 最基本的SELECT语句: SELECT 字段1,字段2,… FROM 表名
SELECT 1+1,3*2;
#DUAL:伪表
SELECT 1+1,3*2 
FROM DUAL; 

# *:表中的所有的字段(或列)
SELECT * FROM employees;
SELECT employee_id,last_name,salary
FROM employees;

# 2.列的别名
# as:全称为alias(意为别名),可以省略
# 还可以,列的别名用一对双引号引起来,不要使用单引号。
SELECT employee_id emp_id,last_name AS lname,department_id "dep_id",salary*12 AS "annual sal"
FROM employees;

# 3.去除重复行
# 查询员工表中一共有哪些部门id呢?

# 错误的:没有去重的情况
SELECT department_id
FROM employees;
# 正确的:去重的情况
SELECT DISTINCT department_id
FROM employees;

# 错误的:
SELECT salary,DISTINCT department_id
FROM employees;

# 仅仅是没有报错,但是没有实际意义,显示的是每组dep+sal没有重复的
SELECT DISTINCT department_id, salary
FROM employees;

# 4.空值参与运算
# 1.空值:null
# 2.null不等同于0,'','null'
# 3.空值参与运算,结果一定也为空。
SELECT employee_id, salary, commission_pct, salary*(1+commission_pct)*12 "年工资"
FROM employees;
# 实际问题的解决方案:引入ifnull
SELECT employee_id, salary, commission_pct, salary*(1+IFNULL(commission_pct,0))*12 "年工资"
FROM employees;

# 5.着重号``
SELECT * FROM `order`;

# 6.查询常数,用来补充字段
SELECT '尚硅谷', 123, employee_id, last_name
FROM employees;

# 7.显示表结构
DESCRIBE employees;
DESC employees;

# 8.过滤数据
#练习:查询90号部门的员工信息
SELECT *
FROM employees
#过滤条件,声明在from结构的后面
WHERE department_id=90;

#练习:查询last_name为‘king’的员工的信息
SELECT *
FROM employees
#字符串用单引号表示;此处king不区分大小写是MySQL的问题,不是因为Windows不区分大小写
WHERE last_name='King';

 

标签:语句,03,salary,employees,employee,department,id,SELECT
来源: https://www.cnblogs.com/sherryyuan/p/16272777.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有