首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

一个表查询的超难的有关问题,弄了几天没有处理好

2011-12-29 
一个表查询的超难的问题,弄了几天没有处理好表1,字段:id,wangzhi,cishu表2字段,id,表1的id,日期我要求选出

一个表查询的超难的问题,弄了几天没有处理好
表1,
字段:id,wangzhi,cishu
表2
字段,id,表1的id,日期

我要求选出的字段是表1的wangzhi,条件是,表1的id和表2中的 "表1的id "相同,而且表2的日期要大于24小时,或者是表2中 "表1的id "不存在,

请各位老大,给点思路




[解决办法]
CREATE TABLE Tab1
(
[id] int,
[wangzhi] varchar(30),
[cishu] int
)
CREATE TABLE Tab2
(
[id] int,
[Aid] int,
[theDate] datetime
)

INSERT Tab1
SELECT 1, 'http://www.com1.com ',3 UNION ALL
SELECT 2, 'http://www.com2.com ',2 UNION ALL
SELECT 3, 'http://www.com3.com ',5
INSERT Tab2
SELECT 1,1,DATEADD(day,1,GETDATE()) UNION ALL
SELECT 2,2,GETDATE()
--你要的语句开始
SELECT A.wangzhi FROM Tab1 AS A,Tab2 AS B WHERE (A.id=B.Aid AND DATEDIFF(day,GETDATE(),B.theDate)> =1) UNION ALL
SELECT Tab1.wangzhi FROM Tab1 WHERE Tab1.id NOT IN(SELECT Tab2.Aid FROM Tab2)
--你要的语句结束
DROP TABLE Tab1
DROP TABLE Tab2

热点排行