SQL基础查询语句
进阶1:基础查询
语法:
SELECT 查询列表 FROM 表名;
特点:
1.查询列表可以是:表中的字段、常量值、四则运算表达式、函数
2.查询的结果是一个虚拟的表格
1.查询表中的单个字段
SELECT last_name FROM employees;
2.查询表中的多个字段
SELECT last_name,salary,email FROM employees;
3.查询表中所有字段
SELECT * FROM employees;
查询时的细节注意补充
在做查询时,正常来讲需要先打开指定的数据库。如果不手动打开,可以用代码 USE DATABASE[NAME]
来打开指定的库。
USE myemployees;
``是着重号,用于区分是字段还是关键字
SELECT NAME 和
SELECT `NAME`
4.查询常量值
SELECT 100;
SELECT 'john';
5.查询表达式
SELECT 100%98;
6.查询函数
version函数是返回MySQL数据库的当前版本
SELECT VERSION();
7.起别名 AS
别名的优点:
①便于理解
②如果要查询的字段有重名的情况,使用别名可以区分开来
– 方式一:使用AS
SELECT last_name AS 姓,first_name AS 名 FROM employees;
– 方式二:使用空格
SELECT last_name 姓,first_name 名 FROM employees;
– 案例:查询salary,显示结果为 out put。因为别名存在关键词,所以可以用单引号’'括起来。
SELECT salary AS out put FROM employees; #×
SELECT salary AS 'out put' FROM employees; #√
8.去重 DISTINCT
– 案例:查询员工表中涉及到的所有部门编号
SELECT DISTINCT department_id FROM employees;
9.+号的作用
java中的+号:
①运算符,两个操作数都为数值型
②连接符,只要有一个操作数为字符串
mysql中的+号:
仅仅只有一个功能:运算符
SELECT 100+90;
两个操作数都为数值型,则做加法运算SELECT '123'+90;
只要其中一方为字符型,则试图将字符型数值转换成数值型
如果转换成功,则继续做加法运算
SELECT 'john'+90;
如果转换失败,则将字符型数值转换成0
SELECT null+10;
只要其中一方为null,则结果肯=肯定为null
– 案例:查询员工名和姓连接成一个字段,并显示为 姓名
SELECT last_name+first_name AS 姓名 FROM employees; #×
字符串拼接函数 CONCAT
SELECT CONCAT(last_name,first_name) AS 姓名 FROM employees; #√
IFNULL函数
IFNULL() 函数用于判断第一个表达式是否为 NULL,如果为 NULL 则返回第二个参数的值,如果不为 NULL 则返回第一个参数的值。
语法格式:IFNULL(expression, alt_value)
———————————————————————————————
一、简单查询案例
显示表 departments的结构
DESC departments;
将表 employees中的全部列合并成一个列,各个列之间用逗号连接,列名显示成out_put
SELECT CONCAT(first_name,',',last_name,',',job_id,',',commission_pct)
AS out_put
FROM employees; #×
因为 commission_pct中的值有null,而null和任何操作数拼接最后的结果都是null
IFNULL函数可以解决这个问题
SELECT IFNULL(commission_pct,0),commission_pct
所以回到一开始的问题
SELECT CONCAT(first_name,',',last_name,',',job_id,',',IFNULL(commission_pct,0))
AS out_put
FROM employees; #√
本文地址:https://blog.csdn.net/m0_54353771/article/details/112645221
推荐阅读