发现一个对于级联查询,批量更新十分有用的sql
来源:互联网 发布:淘宝网鞋子帆布鞋 编辑:程序博客网 时间:2024/05/17 23:22
当时级联是在Java代码里面写的,但是突然想通过sql的层面进行优化,可以利用case when
select
case when type3.`category_id` != '' then type3.`category_id`when type2.`category_id` != '' then type2.`category_id`
when type1.`category_id` != '' then type1.`category_id`
else '其他'
end category_id
from `goods_type` type3
left join `goods_type` type2 on type3.`parent_id` = type2.`id`
left join `goods_type` type1 on type2.`parent_id` = type1.`id`
where
type1.`is_disable` = 0 and type2.`is_disable` = 0 and type3.`is_disable` = 0
and type1.`status` = 2 and type2.`status` = 2 and type3.`status` = 2
and type3.`layer` = 3 and type2.`layer` = 2 and type1.`layer` = 1
and type3.`id` in
(select goods_type_id from `goods` goods
where goods.id = '00012C70-150E-4969-9137-F927B8ECEB8F')
case when then end 还可以用来做批量更新,批量删除,可以减少对数据库的连接操作,可以进行一次连接,然后操作多条数据
例如
update table
set name =
case id
when #{id1} then #{name1}
when #{id2} then #{name2}
....
end
where id in (#{id1}, #{id2},.....)
0 0
- 发现一个对于级联查询,批量更新十分有用的sql
- vector是一个十分有用的容器
- 对于初学者十分有用的windows下CVS工具
- SQL SERVER 下 OPENQUERY 的级联查询及更新
- 发现一个非常好的域名批量查询工具
- sql批量更新的一个小坑
- 十分有用的网址
- SQL Server 批量更新和级联删除(批量删除)
- SQL 级联更新,级联删除的概念
- sql server的级联更新
- 一个十分小巧的批量图片格式转换工具(28K)
- 十分有用的网络工具hping
- 发现一个有用的js事件onpropertychange
- 今天发现的一个有用命令
- 级联更新SQL
- sql语句的批量更新
- 对于solr 在更新数据后在admin中查询发现未更新问题
- 一个有用的SQL语句
- Unity网格介绍
- H.264 NAL层解析(0x00000001,编码,打包,NALU)
- error LNK2001: 无法解析的外部符号 "public: void __thiscall Cmfc_DeleteFileDlg::OnBnClickedButton3(void)"
- 20瓶药里面有19瓶真药和1瓶假药
- TCPServer与Client的通信代码
- 发现一个对于级联查询,批量更新十分有用的sql
- magent实现memcached集群方式
- ffmpeg 提取视频文件关键帧
- linux下生成https的crt和key证书
- centos 7.0 下安装nginx1.11
- SpringMVC框架搭建
- onhashchange
- 图的邻接表存储下的广度优先遍历
- Count++不是线程安全的 不是原子性的