目录
- 1.增删改操作?
-
- 1.1 插入
- 1.2 更新
- 1.3 删除
- 2.表与索引操作?
-
- 2.1 表的创建、修改与删除
- 2.2 索引的创建、删除
- 3.聚合分组查询?
-
- 3.1 聚合函数
- 3.2 分组查询
- 4.多表查询?
-
- 4.1 嵌套子查询
- 4.2 合并查询
- 4.3 连接查询
- 5.窗口函数?
-
- 5.1 专用窗口函数
- 5.2 聚合窗口函数
- 6.其他常用操作?
-
- 6.1 空值处理
- 6.2 高级条件语句
- 6.3 限量查询
- 6.4 文本转换函数
1.增删改操作? 1.1 插入 1.2 更新 1.3 删除
SQLServer:DBCC CHECKIDENT (表名,reseed,0)
MySQL: ALTER TABLE 表名 AUTO_INCREMENT= 1
2.表与索引操作? 2.1 表的创建、修改与删除 删除表所有数据的sql语句,和效率快慢
2.2 索引的创建、删除 sql索引语法
3.聚合分组查询? 3.1 聚合函数 3.2 分组查询 4.多表查询? 4.1 嵌套子查询 4.2 合并查询 The used select statements have a different number of columns解决办法
1.问题原因
这个异常出现在两个表使用union all进行合并时遇到的,表A存在的字段数量和表B最初是一致的,包括字段名字和类型都是一致,使用union all连接无异常;
后来由于需要在表B添加了一个新的字段,导致两张表的字段在数量上不一致,出现了异常;
- 解决办法
SELECT *
FROM project t
LEFT JOIN (
SELECT * FROM biz_a_contract
UNION ALL
SELECT * FROM biz_b_contract
) a ON a.id = t.contract_id
WHERE
t.id = '200'
改为
SELECT *
FROM project t
LEFT JOIN (
SELECT * FROM biz_a_contract
UNION ALL
SELECT tt.*,null AS 'xx' FROM biz_b_contract tt
) a ON a.id = t.contract_id
WHERE
t.id = '200'
【#|【牛客】SQL刷题篇进阶篇】或者直接列出具体的字段,保证顺序一致性
4.3 连接查询 5.窗口函数? 5.1 专用窗口函数 5.2 聚合窗口函数 6.其他常用操作? 6.1 空值处理 6.2 高级条件语句 6.3 限量查询 6.4 文本转换函数
推荐阅读
- 牛客SQL刷题-2021-11-21 day2
- 牛客刷题笔记--(java基础1-50)
- 牛客SQL刷题-2021-12-03 day4
- mysql|牛客刷题---重点复习
- 牛客刷题笔记--(java基础51-100)
- 牛客SQL刷题-2021-11-20 day1
- SQL|mysql牛客刷题(SQL大厂面试真题)
- Java|Java中String类的split方法
- JAVA|java中String类常用方法,查找特定字符出现的次数