注册 登录
编程论坛 SQL Server论坛

怎么用SQL写WHERE 语句?

拗九 发布于 2010-06-29 16:24, 972 次点击
请问如何写以下SQL:
1,2,3,4字段,判断,如果3字段='1234',那么增加一条数据,1,2不变,3='4567',4='0'?
6 回复
#2
cnfarer2010-06-29 19:20
不明白何意
#3
拗九2010-06-30 10:57
我想往数据库里增加N条记录,这时候我发现个规律,只要把原来数据库里面N条记录修改下,就不用手动一条一条输入数据了。
这个数据库表有四个字段,分别用,1,2,3,4表示;
规律如下:
当我检查原来的数据库表,从第一条往下检查,发现当第3字段里面的数值=‘6948’时,我要输入的数据的第1,2字段可以不用手动输入,只要直接套用字段3=‘6948’这条数据的1,2字段值,3,4字段值分别输入23162,4;
再往下检查,每一条字段3=‘6948’时,我就增加一条记录,记录的前两字段都和我刚刚所检查字段3=‘6948’的前两字段值一样,自动输入这两字段,而我要输入的所有字段3,4的值都是23162和4.
一直检查到原数据库记录结束,没有符合条件:字段3=‘6948’的情况,添加记录结束。
#4
拗九2010-06-30 11:04
我的思路如下:首先我要建一个循环语句,指向第一个记录,检查是否:字段3=‘6948’,是的话:@A=字段1,@B=字段2,然后增加一条记录,insert,@A,@B,23162,4
记录号+1,指向第2条记录,在次检查是否符合条件,不是的话,记录号+1,是的话INSERT,,循环直到数据库表记录结束,完成添加。
我想问的是具体这个SQL语句要怎么写?谢谢!
#5
happynight2010-06-30 11:24
INSERT INTO 表([1],[2],[3],[4])
SELECT [1],[2],'23162',4
FROM 表
WHERE [3]='6948'
#6
cnfarer2010-06-30 18:19
楼上正解
#7
拗九2010-07-01 10:01
以下是引用happynight在2010-6-30 11:24:29的发言:

INSERT INTO 表([1],[2],[3],[4])
SELECT [1],[2],'23162',4
FROM 表
WHERE [3]='6948'
结果是没有添加任何记录。。。。。。。。。。。。。。。
1