新增格式2:默认给全部列添加数据
-- 标准语法 INSERT INTO 表名 VALUES (值1,值2,值3,...); -- 默认给全部列添加数据 INSERT INTO product VALUES (3,\'电视\',2999,18,\'2099-06-06\'); -- 查看表中所有数据 SELECT * FROM product;新增格式3:批量添加数据
-- 默认添加所有列数据 标准语法 INSERT INTO 表名 VALUES (值1,值2,值3,...),(值1,值2,值3,...),(值1,值2,值3,...); -- 批量添加数据 INSERT INTO product VALUES (4,\'冰箱\',999,26,\'2099-08-08\'),(5,\'洗衣机\',1999,32,\'2099-05-10\'); -- 查看表中所有数据 SELECT * FROM product;-- 给指定列添加数据 标准语法INSERT INTO 表名(列名1,列名2,...) VALUES (值1,值2,...),(值1,值2,...),(值1,值2,...); -- 批量添加指定列数据 INSERT INTO product (id,NAME,price) VALUES (6,\'微波炉\',499),(7,\'电磁炉\',899); -- 查看表中所有数据 SELECT * FROM product;
注意事项
列名和值的数量以及数据类型要对应
除了数字类型,其他数据类型的数据都需要加引号(单引双引都可以,推荐单引)
DML-UPDATE语句修改表数据语法
-- 标准语法 UPDATE 表名 SET 列名1 = 值1,列名2 = 值2,... [where 条件]; -- 修改手机的价格为3500 UPDATE product SET price=3500 WHERE NAME=\'手机\'; -- 查看所有数据 SELECT * FROM product; -- 修改电视的价格为1800、库存为36 UPDATE product SET price=1800,stock=36 WHERE NAME=\'电视\'; -- 修改电磁炉的库存为10 UPDATE product SET stock=10 WHERE id=7;注意事项
修改语句中必须加条件
如果不加条件,则将所有数据都修改
DML-DELETE语句删除表数据语法
-- 标准语法 DELETE FROM 表名 [WHERE 条件]; -- 删除product表中的微波炉信息 DELETE FROM product WHERE NAME=\'微波炉\'; -- 删除product表中库存为10的商品信息 DELETE FROM product WHERE stock=10; -- 查看所有商品信息 SELECT * FROM product;注意事项
删除语句中必须加条件
如果不加条件,则将所有数据删除
DQL-单表查询数据准备(直接复制执行即可)
-- 创建db1数据库 CREATE DATABASE db1; -- 使用db1数据库 USE db1; -- 创建数据表 CREATE TABLE product( id INT, -- 商品编号 NAME VARCHAR(20), -- 商品名称 price DOUBLE, -- 商品价格 brand VARCHAR(10), -- 商品品牌 stock INT, -- 商品库存 insert_time DATE -- 添加时间); -- 添加数据 INSERT INTO product VALUES (1,\'华为手机\',3999,\'华为\',23,\'2088-03-10\'), (2,\'小米手机\',2999,\'小米\',30,\'2088-05-15\'), (3,\'苹果手机\',5999,\'苹果\',18,\'2088-08-20\'), (4,\'华为电脑\',6999,\'华为\',14,\'2088-06-16\'), (5,\'小米电脑\',4999,\'小米\',26,\'2088-07-08\'), (6,\'苹果电脑\',8999,\'苹果\',15,\'2088-10-25\'), (7,\'联想电脑\',7999,\'联想\',NULL,\'2088-11-11\');查询语法
select 字段列表 from 表名列表 where 条件列表 group by 分组字段 having 分组之后的条件 order by 排序 limit 分页限定查询全部
-- 标准语法 SELECT * FROM 表名; -- 查询product表所有数据 SELECT * FROM product;
查询部分
多个字段查询
-- 标准语法 SELECT 列名1,列名2,... FROM 表名; -- 查询名称、价格、品牌 SELECT NAME,price,brand FROM product;去除重复查询
注意:只有全部重复的才可以去除
-- 标准语法 SELECT DISTINCT 列名1,列名2,... FROM 表名; -- 查询品牌 SELECT brand FROM product; -- 查询品牌,去除重复 SELECT DISTINCT brand FROM product;计算列的值(四则运算)
-- 标准语法 SELECT 列名1 运算符(+ - * /) 列名2 FROM 表名;/* 计算列的值 标准语法: SELECT 列名1 运算符(+ - * /) 列名2 FROM 表名; 如果某一列为null,可以进行替换 ifnull(表达式1,表达式2) 表达式1:想替换的列 表达式2:想替换的值*/ -- 查询商品名称和库存,库存数量在原有基础上加10 SELECT NAME,stock+10 FROM product; -- 查询商品名称和库存,库存数量在原有基础上加10。进行null值判断 SELECT NAME,IFNULL(stock,0)+10 FROM product;起别名
-- 标准语法 SELECT 列名1,列名2,... AS 别名 FROM 表名; -- 查询商品名称和库存,库存数量在原有基础上加10。进行null值判断。起别名为getSumSELECT NAME,IFNULL(stock,0)+10 AS getsum FROM product; SELECT NAME,IFNULL(stock,0)+10 getsum FROM product;
条件查询
条件分类
符号 功能> 大于
< 小于
>= 大于等于
<= 小于等于
= 等于
<> 或 != 不等于
BETWEEN ... AND ... 在某个范围之内(都包含)
IN(...) 多选一
LIKE 占位符 模糊查询 _单个任意字符 %多个任意字符
IS NULL 是NULL
IS NOT NULL 不是NULL
AND 或 && 并且
OR 或 || 或者
NOT 或 ! 非,不是