
数据库操作
LoveyouLots
保持学习
展开
-
union和union all 的区别
1.union去重且排序,union all不去重也不排序;2.union all比union效率高;3.内部的select语句必须拥有相同数量的列,列也必须拥有相似的数据类型,每句select的列的顺序也必须相同;4.union和union all连接的语句算是一个sql,只能有一个order by。...原创 2020-07-14 10:38:15 · 864 阅读 · 0 评论 -
设置时间为timestamp格式或者date格式,且为特定时间
设置时间为timestamp格式,且为现在的时间的6个小时后:set CD_TIME=systimestamp+0.25;设置时间为timestamp格式,且为现在的时间的3个小时后:set CD_TIME=systimestamp+0.125;设置时间为timestamp格式,且为现在的时间的1天后:set CD_TIME=systimestamp+1;设置时间为date格式,且为现在的时间的6个小时后:set CD_TIME=sysdate+0.25;设置时间为date格式,且为现在的时原创 2020-06-24 16:38:49 · 1365 阅读 · 0 评论 -
update更新字段内容正确写法
用update更新 a表的某个字段内容,用b表的某个字段内容覆盖a表对应的字段内容时,如果不加where条件,或者这个字段的内容不唯一,就有可能把这个字段a表中的一些内容置空。如,根据a表的id与b表的id相等时,b表的name字段更新覆盖a表的name字段内容。如果不加WHERE EXISTS(SELECT 1 FROM b WHERE a.id = b.id);就可能把a表中的与b表中id不相等的数据的内容置空,正确的SQL写法是:UPDATE a SET a.name = (select b.na..原创 2020-06-24 16:08:02 · 4600 阅读 · 0 评论 -
通过kettle对表数据进行数据更新
根据b表数据对a表数据进行更新,当两个表的id相同时。id不同的话,维持a表数据原样,不要置空。方法如下:1.如果两张表都在数据库中,则直接在kettle中进行配置,转换:表输入---->插入更新,表输入中填写b表,配置的SQL语句为:select * from b where b.id in (select a.id from a) ,预览一下,看数据是否查出来是需要从b表更新到a表的数据量。插入更新中的选择查询条件为id=id,更新字段为id(为N),其他要更新的字段(为Y)。表输入和插入更.原创 2020-06-24 15:56:31 · 5407 阅读 · 0 评论