create table t1( f1 number(2), f2 number(2));
insert into values(1, 1);
insert into values(2, 5);
insert into values(3, 4);
我想得到t1表中f2字段是否包含有如下值(1,2,3,4,5,6),要求返回结果集有6行,如果对应行包含就置1,否则置0,即结果为
1
0
0
1
1
0
可以把(1,2,3,4,5,6)值另外插到一个表中去,用左联接的方法可以得到上结果,但要一个临时表,有能用一条SQL就解决问题吗
insert into values(1, 1);
insert into values(2, 5);
insert into values(3, 4);
我想得到t1表中f2字段是否包含有如下值(1,2,3,4,5,6),要求返回结果集有6行,如果对应行包含就置1,否则置0,即结果为
1
0
0
1
1
0
可以把(1,2,3,4,5,6)值另外插到一个表中去,用左联接的方法可以得到上结果,但要一个临时表,有能用一条SQL就解决问题吗
解决方案 »
- chtmlview导航后提示未登录
- MDI实现动态生成新的视图(或者窗口)的问题
- 我加了一个picture控件, 用它作完全窗体的背景, 现在我要加一个tab控件,但tab老是跑到后面去,应该怎么做的啊.
- ocx自动下载的问题--已经按正确的方法去做了,但还是不行
- 标准C语言的函数,是不是在VC直接可以用,不用自己去引用头文件啊??
- !!!!!!!!!!如何在指定的内存空间域中来分配空间?!!!!!
- 关于2k中屏保,可以在程序....50分相送,不够可以再给
- 请问哪有《thinking in java》中文版下载?
- 如何对usb接口的读卡器进行输出数据绑定?
- 不同系统间 网络文件传输用什么流好?
- 菜鸟问题,来拿分!!
- 学习win32SDK看那些书比较好?
(SELECT f1, f2 FROM t1
UNION
SELECT f1 + 3 AS f1, f2 FROM t1
)AS Items
UNION SELECT SIGN(COUNT(*)) FROM T1 WHERE F2 = 2
UNION SELECT SIGN(COUNT(*)) FROM T1 WHERE F2 = 3
UNION SELECT SIGN(COUNT(*)) FROM T1 WHERE F2 = 4
UNION SELECT SIGN(COUNT(*)) FROM T1 WHERE F2 = 5
UNION SELECT SIGN(COUNT(*)) FROM T1 WHERE F2 = 6
SIGN(COUNT
----------
0
1
不对。88dd(巴迪) 的结果不能正确执行
SELECT CASE WHEN f1 = f2 THEN 1 ELSE 0 END AS Re
*
f1这个地方第4行也应为1,因为有insert into t1 values(3, 4); 结果就是第1,5,4行值为1
UNION ALL SELECT SIGN(COUNT(*)) FROM T1 WHERE f2 = 2
UNION ALL SELECT SIGN(COUNT(*)) FROM T1 WHERE f2 = 3
UNION ALL SELECT SIGN(COUNT(*)) FROM T1 WHERE f2 = 4
UNION ALL SELECT SIGN(COUNT(*)) FROM T1 WHERE f2 = 5
UNION ALL SELECT SIGN(COUNT(*)) FROM T1 WHERE f2 = 6
SELECT ( CASE WHEN f1 = f2 THEN 1 ELSE 0 END ) AS Result FROM
(SELECT f1, f2 FROM t1
UNION
SELECT f1 + 3 AS f1, f2 FROM t1
)AS Items另外我觉得第四行应该是0
因为
SELECT f1, f2 FROM t1
UNION
SELECT f1 + 3 AS f1, f2 FROM t1
查询出来的结果是
f1 f2
----------- -----------
1 1
2 5
3 4
4 1
5 5
6 4
DECLARE @tempTable TABLE (
nCheck INT PRIMARY KEY
)
INSERT @tempTable Values(1)
INSERT @tempTable Values(2)
INSERT @tempTable Values(3)
INSERT @tempTable Values(4)
INSERT @tempTable Values(5)
INSERT @tempTable Values(6)SELECT * FROM @tempTable t
LEFT JOIN t1 ON t1.f2 = nCheck
我用的是oracle8.05.
不好意思,以前学的SQL都忘了,什么都要问,oracle又没帮助。
oracle创建临时表的语句是什么CREATE GLOBAL TEMPORARY TABLE TTT(f1 number(3)) ON COMMIT PRESERVE ROWS在GLOBAL处要报错