基础查询1
#进阶查询1:基础查询/*语法:select 查询列表 from 表名字;特点:1. 查询列表可以是:表中的字段、常量值、表达式、函数。2. 查询的结果是一个虚拟的表格。*/#1. 查询表中的单个字段SELECT first_name, last_name FROM `employees` ;#2. 查询表中的多个字段SELECT `job_id`,`salary`,`hiredate` FROM `employees`;#3. 查询所有字段SELECT * FROM `employees`;#4. 查询常量值SELECT 100;SELECT 'john'; # sql语句不区分字符和字符串'' "" 都可以。#5.查询表达式SELECT 100%10;#6.查询函数SELECT VERSION();#7.起别名/*① 便于理解。 ② 如果要查询的字段有重名的情况,使用别名可以区分开来。*/# 方式一 as:SELECT 100*90 AS a1;SELECT `last_name` AS 姓, `first_name` AS 名 FROM `employees`;# 方式二 省略:SELECT last_name 姓,first_name 名 FROM `employees`;# 案例:查询salary,显示结果为 out put , out put 本身是关键字。SELECT salary AS "out put" FROM `employees`;#8.去重# 案例SELECT DISTINCT `department_id` FROM `employees`#9.+号的作用/*mysql 中的+号只做:运算符。不做:连接符。SELECT 100+90; 打印 190 两个操作数都为数值类型,则做加法运算SELECT '100'+90; 打印 190 其中一个是字符型,就会试图将字符型数值转换成数值型,如果转换成功,则继续做加法运算。SELECT 'john'+90; 打印 0 转换失败的则还会将字符型转换成0。SELECT null+90; 只要其中一方为null,则结果肯定为null。*/#案例:查询员工名字和姓连接成一个字段,并显示为姓名SELECT CONCAT(last_name, ' ', first_name) AS 姓名 FROM `employees`
基础查询2
# 下面的语句是否可以执行成功,并且改错,假设已经 use `myemployees`。# salary 起别名SELECT last_name, job_id, salary AS sal FROM `employees` ;# slqary * 12 起别名SELECT `employee_id`, `last_name`, `salary` * 12 AS 'ANNUAL SALARY' FROM `employees` ;# 显示表departments的结构,并查询其中的全部数据。DESC `departments`;SELECT * FROM `departments`;# 显示出表`employees`中的全部job_id(不重复)SELECT DISTINCT job_id FROM `employees`;# 显示出表`employees`的全部列,各个列之间用逗号连接,列头显示成out_put# SELECT IFNULL(expr1,expr2);判断是否为NULL,可替换。SELECT IFNULL(commission_pct,0) AS 奖金率 FROM `employees`;SELECT CONCAT(`job_id`,',',`manager_id`,',',`salary`,',', IFNULL(`commission_pct`,0)) AS OUT_PUT FROM `employees`;