删除数据:DELETE FROM 表名【WHERE 条件】
TRUNCATE TABLE 表名 【WHERE 条件】
相同:都能删除数据,不删除表结构,但TRUNCATE速度更快;
不同:使用TRUNCATE重新设置AUTO_INCREMENT计数器;、
使用TRUNCATE不会对事务有影响
SELECT语法:SELECT * FROM table_name
取别名(as,可以省略) as:一给列取表名 二:给表取别名 三:给查询结果取一个新的名字 例:(SELECT CONCAT('姓名:',studentname) AS 新姓名 FROM student)
查询去掉重复项:DISTINC 例:(SELECT DISTINC studentno FROM result)
select 查询中可以使用表达式:一:SELECT @@auto_increment_increment 二:SELECT VERSION() 三:SELECT 100*3-1 AS 计算结果
模糊查询: between and;like;in;null;like经常和% _结合使用;%代表0到任意字符,_代表一个字符 ;“&”和“_”是通配符
转义符:\ (自定义转义符:ESCAPE':')
用null筛选要用 IS NULL、IS NOT NULL;
连接查询:内连接:inner join 查询两个表中的结果集中的交集
外连接:outer join
左连接:left join 以左表作为基准,右表来一一匹配,匹配不上的,返回左表记录,右表以NULL填充;
右链接:right join 以右表作为基准,左表来一一匹配,匹配不上的,返回右表记录,左表以NULL填充;
等值连接:(FROM a,b WHERE a.xx=b.xx)
非等值连接
自连接:SELECT a.'父栏目' , b.'子栏目' FROM xx.a , xx.b WHERE a.标签1 = b.标签2 (自连接一定要给表取别名)