1.插入数据
INSERTINTO 表名(列名1,列名2 ...)VALUES(列值1,列值2...);
如;
INSERTINTO emp VALUES (11,'shundong','nan',100,'2018-04-01');
1.insert(插入)
注意:列名与列值的类型、个数、顺序要一一对应。
值不要超出列定义的长度。
如果插入空值,请使用null
插入的日期和字符一样,都使用引号括起来
2.插入部分数据
INSERTINTO 表名 (字段) VALUES (插入的内容);
如:
INSERTINTO emp (id,name) VALUES (66,'nanggg');
3.批量插入
INSERTINTO emp VALUES
(插入的内容1),
(插入的内容2),
(插入的内容3);
如:
INSERTINTO emp VALUES
(12,'ww1','nan1',100,'2018-02-02'),
(12,'ww2','nan2',101,'2018-02-02'),
(12,'ww3','nan3',102,'2018-02-02');
4.修改表内容( UPDATE)
UPDATE 表名 SET 列名1=列值1,列名2=列值2 。。。 WHERE 列名=值
如:
UPDATE emp SET slary=6000;--不指定就全改UPDATE emp SET slary=4000WHERE name = 'nang';UPDATE emp SET slary=3000,gender='f'WHERE name = 'wanglong';UPDATE emp SET slary=slary+1000WHERE name = 'shundong';
5.删除一条表数据(DELETE)
语法 : DELETEFROM 表名 【WHERE 列名=值】
如:
DELETEFROM emp WHERE name='wanglong';DELETE * FROMWHERE id = 1;
6.删除整表数据
DELETEFROM 表名;
4.表操作(查询)
1.查询表数据(SELECT)
SELECT * FROM 表名;
2.条件查询
条件查询就是在查询时给出WHERE子句,在WHERE子句中可以使用如下运算符及关键字:
=、!=、<>、<、<=、>、>=; (!= 和 <> 一样)
BETWEEN…AND; 范围查询 age BETWEEN 18AND30;
IN(set); 固定的范围之内 用逗号隔开
IS NULL;(是空)
ISNOT NULL(不是空)
AND;(与)
OR;(或)
NOT; (非)
1.查询实例
(1)年龄大于20岁(只显示年龄和姓名)
SELECT name 姓名 ,age 年龄 FROM stu WHERE age=20;
(2)查询性别为女,并且年龄50的记录
SELECT * FROM stu WHERE gender='f'AND age=21;
(3)查询学号为3,或者姓名为wanglong的记录
SELECT * FROM stu WHERE id=3OR name='dingpeng5';
(4)查询学号为1,2,3的记录
SELECT * FROM stu WHERE id IN(1,2,3);
(5)查询学号不是1,2,3的记录
SELECT * FROM stu WHERE id NOTIN(1,2,3);
(6)查询年龄为null的记录
SELECT * FROM stu WHERE age ISNULL;
(7)查询年龄在20到40之间的学生记录
SELECT * FROM stu WHERE age>= 20AND age<=40;SELECT * FROM stu WHERE age BETWEEN 20AND40;
(8)查询性别非男的学生记录
SELECT * FROM stu WHERE gender !='n';
(9)查询姓名不为null的学生记录
SELECT * FROM stu WHERE name ISNOTNULL;
(10)过滤重复数据
UPDATE stu SET age=22WHERE id=2;SELECTDISTINCT age FROM stu;
(11)增加字段 薪金和佣金使用int 类型 并插入数据
ALTERTABLE stu ADD xingjing INT ;ALTERTABLE stu ADD yongjing INT ;UPDATE stu SET xingjing=6000;UPDATE stu SET yongjing=7000;
(12)查询佣金和工资之和
查询结果相当于增加了一个新的字段(不会对原表进行修改)
给字段起别名 as 关键字 该关键字可以省略
系统关键字不能当字段名
SELECT *,xingjing+yongjing as total FROM stu;
注意:因为sal和comm两列的类型都是数值类型,所以可以做加运算。如果sal或comm中有一个字段不是数值类型,那么会出错。
SELECT *,sal+comm FROM emp;
注意:任何数值和null值相加 都是null值