SQL专项练习31
FROM 子查询 必须要有别名
select ...
from (
select ... from ...
) AS 别名
ALL 对所有数据都满足条件,整个条件才成立
where 字段 >= all() 等价于 MAX() <=all() 等价于 MINNY
ANY 只要有一条数据满足条件,整个条件成立
where 字段>=any() 等价于 >min() <any() 等价于 <max
SQL Server中每一条select、insert、update、delete语句都是隐形事务的一部分,
显性事务用BEGIN TRANSACTION明确指定事务。
声明游标语法中的 insensitive 参数,表示声明一个静态游标
当select语句中使用 distinct 、group by 、having 、union 语句时,游标将会自动设定 insensitive 选项
& 位与运算
对于一个数(a)来说: a与1的结果如果为1,则这个数是奇数,如果为0,则这个数是偶数
Mysql中表student_table(id,name,birth,sex),删除name重复的id最大的记录,比如'张三'重复2次,id分别是1、2,则删除id=2的记录,保留id=1的记录。
delete t0 from student_table t0 inner join ( select t2.* from (select name,count(*) as c1 from student_table GROUP BY name having c1 > 1) t1 -- 有重复的姓名 left join (select name, max(id) as id from student_table group by name ) t2 -- 姓名 id最大值 on t1.name = t2.name ) t3 -- 重复姓名 的 id最大值 on t0.id = t3.id ;
SQL专项练习 文章被收录于专栏
SQL专项每日练习,错题