MySql:基础查询
语法:
SELECT 要查询的东西
【FROM 表名】;
类似于Java中 :System.out.println(要打印的东西);
特点:
①通过select查询完的结果 ,是一个虚拟的表格,不是真实存在
② 要查询的东西 可以是常量值、可以是表达式、可以是字段、可以是函数
创建一张employees表
SET NAMES utf8mb4;
SET FOREIGN_KEY_CHECKS = 0;
-- ----------------------------
-- Table structure for employees
-- ----------------------------
DROP TABLE IF EXISTS `employees`;
CREATE TABLE `employees` (
`employee_id` int(6) NOT NULL AUTO_INCREMENT COMMENT '员工编号',
`first_name` varchar(25) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '名',
`last_name` varchar(25) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '姓',
`email` varchar(25) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '邮箱',
`phone_number` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '电话号码',
`job_id` varchar(10) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '工种编号',
`salary` double(10, 2) NULL DEFAULT NULL COMMENT '月薪',
`commission_pet` double(4, 2) NULL DEFAULT NULL COMMENT '奖金率',
`manager_id` int(6) NULL DEFAULT NULL COMMENT '管理者编号',
`department_id` int(4) NULL DEFAULT NULL COMMENT '部门编号',
`hiredate` datetime(0) NULL DEFAULT NULL COMMENT '入职日期',
PRIMARY KEY (`employee_id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;
SET FOREIGN_KEY_CHECKS = 1;
1查询表中单个字段(姓)
select last_name FROM employees;
2查询表中的多个字段(姓,薪水,邮箱)
SELECT last_name,salary,email FROM employees;
3.查询表中所有字段
SELECT * FROM employees;
4.查询常量值
SELECT '琛'
SELECT '黄'
5.查询表达式
SELECT 100*98
6.查询函数
SELECT VERSION()
7.起别名
/*
a.便于理解
b.如果要查询的字段有重名的情况,使用别名可以区分开来
*/
方式一:使用AS
SELECT 98*189 AS '运算结果';
SELECT first_name AS '姓',last_name AS '名' FROM employees;
方式二:使用空格
select first_name '姓',last_name '名' FROM employees;
8.去重
案例:查询员工表中涉及到的所有的部门编号
SELECT DISTINCT department_id FROM employees;
9.+的作用
/*
java中的+号:
a.两个操作数都是数值型
b.连接符:只要有一个操作数是字符串
mysql中的+号只有一个功能就是运算符
SELECT 10 + 20;两个操作数都为数值型,则做加法运算
SELECT’123’+90:其中一方为字符型,试图将字符型数值转换为数值,并对两个操作数进行运算
SELECT ‘jack’ + 100:如果转换失败,则将字符数值转换为0
SELECT null + 0:只要其中一方结果为null,则结果肯定为null
*/
10CONCAT函数
SELECT CONCAT('huang','chen','name') AS huangchen;
案例:查询员工名和姓连接成一个字段,并显示姓名
SELECT CONCAT(first_name,last_name) AS '姓名' FROM employees;