表A:
FieldA1:int
FieldA2:int
FieldA3:int
FieldA4:int
FieldA5:int 表B:
FieldB1:int
FieldB4:int
FieldB5:int
FieldB7:int 表C:
FieldC1:int
FieldC2:int
FieldC3:int
FieldC6:int
FieldC7:int 表D:
FieldD1:int
FieldD7:int 外面传进来4个参数:参数1,参数2,参数3,参数4SQL1: (SQL1可以取出1条或者多条记录)
SELECT 表B.FieldB7
FROM 表A,表B
WHERE
表A.FieldA1 = 参数1
AND 表A.FieldA4 = 参数4
AND 表B.FieldB5 = 表A.FieldA5如果SQL1取出多条记录,并且这几条记录不是全都相同,则返回0,(参考例1)。
例1:
1234
1234
4321
如果SQL1取出多条记录,并且这几条记录全都相同,则需要进行SQL2,(参考例2)。
例2:
1234
1234
1234
如果SQL1取出一条记录(例如1234),则需要进行SQL2。
SQL2: (SQL2只能取出1条记录)
SELECT 表C.FieldC7
FROM 表C
WHERE C.FieldC1 = 参数1
AND C.FieldC2 = 参数2
AND C.FieldC3 = 参数3
AND C.FieldC6 = 1
如果SQL1中的取出的多条相同纪录或者1条记录(表B.FieldB7) 与SQL2取出的记录(表C.FieldC7)相同,则返回0,
例如:表B.FieldB7 = 1234 表C.FieldC7 = 1234
否则进行SQL3。SQL3:把SQL2中取出的表C.FieldC7作为变量记录下来,暂定为参数5
SELECT 表D.FieldD1
FROM 表D
WHERE 表D.FieldD7 = 参数5
如果SQL1中的取出的多条相同纪录或者1条记录(表B.FieldB7) 与SQL3取出的记录(表D.FieldD1)相同,则返回0,
如果不相同,则返回1。需求:现在想把SQL1,SQL2,SQL3放到一个SQL进行处理,直接判断返回值是0,还是1。请大家帮帮忙!
FieldA1:int
FieldA2:int
FieldA3:int
FieldA4:int
FieldA5:int 表B:
FieldB1:int
FieldB4:int
FieldB5:int
FieldB7:int 表C:
FieldC1:int
FieldC2:int
FieldC3:int
FieldC6:int
FieldC7:int 表D:
FieldD1:int
FieldD7:int 外面传进来4个参数:参数1,参数2,参数3,参数4SQL1: (SQL1可以取出1条或者多条记录)
SELECT 表B.FieldB7
FROM 表A,表B
WHERE
表A.FieldA1 = 参数1
AND 表A.FieldA4 = 参数4
AND 表B.FieldB5 = 表A.FieldA5如果SQL1取出多条记录,并且这几条记录不是全都相同,则返回0,(参考例1)。
例1:
1234
1234
4321
如果SQL1取出多条记录,并且这几条记录全都相同,则需要进行SQL2,(参考例2)。
例2:
1234
1234
1234
如果SQL1取出一条记录(例如1234),则需要进行SQL2。
SQL2: (SQL2只能取出1条记录)
SELECT 表C.FieldC7
FROM 表C
WHERE C.FieldC1 = 参数1
AND C.FieldC2 = 参数2
AND C.FieldC3 = 参数3
AND C.FieldC6 = 1
如果SQL1中的取出的多条相同纪录或者1条记录(表B.FieldB7) 与SQL2取出的记录(表C.FieldC7)相同,则返回0,
例如:表B.FieldB7 = 1234 表C.FieldC7 = 1234
否则进行SQL3。SQL3:把SQL2中取出的表C.FieldC7作为变量记录下来,暂定为参数5
SELECT 表D.FieldD1
FROM 表D
WHERE 表D.FieldD7 = 参数5
如果SQL1中的取出的多条相同纪录或者1条记录(表B.FieldB7) 与SQL3取出的记录(表D.FieldD1)相同,则返回0,
如果不相同,则返回1。需求:现在想把SQL1,SQL2,SQL3放到一个SQL进行处理,直接判断返回值是0,还是1。请大家帮帮忙!
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货