关于insert into 里,带条件判断的sql语句怎么写?

关于insert into 里,带条件判断的sql语句怎么写?,第1张

1、方法一

IFNOTEXISTS(SELECT*FROMTABLE_NAMEWHEREFILED1=1)THEN

INSERTINTOTABLE_NAMEVALUES(1

2、将要插入的数据先写入临时表,然后用

INSERTINTOTABLE_NAME

SELECT*FROM#TEMP_TABLEALEFTJOINTABLE_NAMEONA.FILED1=B.FIELD1WHERE

B.FILED1ISNULL

扩展资料:

基本语句

1、数据记录筛选:

sql="select*from数据表where字段名=字段值orderby字段名[desc]"(按某个字段值降序排列,默认升序ASC)。

sql="select*from数据表where字段名like'%字段值%'orderby字段名[desc]"

sql="selecttop10*from数据表where字段名=字段值orderby字段名[desc]"

sql="select*from数据表where字段名 in('值1','值2','值3')"

sql="select*from数据表where字段名between值1and值2"

sql="select列名1,列名2from数据表where字段名=字段值groupby列名1,列名2"(groupby用来分组,并且只有出现自groupby中的列名,才允许出现在select语句中)。

2、更新数据记录:

sql="update数据表set字段名=字段值where条件表达式"

sql="update数据表set字段1=值1,字段2=值2??字段n=值nwhere条件表达式"

3、删除数据记录:

sql="deletefrom数据表where条件表达式"

sql="deletefrom数据表"(将数据表所有记录删除)

参考资料来源:百度百科-SQL语句大全

select max(t.fq) as max_fq, min(t.kq) as min_kq from T_DLDLPH_JSJG t where t.nf='2015' and t.dydj=110

这个最简单

如果你两个语句分别查询,也可以通过ORDER BY来排序,DESC倒序排序,那么第一个就是最大值。ASC正序排序,第一个就是最小值。

用流程控制语句拼接就可以了,比如(Java为例):

String sql="select * from XXX where 1=1"

if(条件)sql+=" and 字段=值"

if(条件)sql+=" and 字段=值"

if(条件)sql+=" and 字段=值"对于编程语言来说,sql就是一个字符串,拼接成能执行的sql就行了。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11802626.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-18
下一篇 2023-05-18

发表评论

登录后才能评论

评论列表(0条)

保存