新手求助SQL多条件关联查询,急盼指教!!!!!

voodoo9000 2013-04-27 11:33:58
论坛无法上传图片或附件,只好如下说明:

"代码需求:

第一步、查询出:A库中 D字段=江苏 且 E字段=航母 且 G字段<>空值 且 G字段=查询当月 且 J字段=味精;---查询结果A

第二步、查询出:B库中 C字段=江苏 且 D字段=航母 且 E字段=右 且 F字段=味精 且 G字段<>空值 且 G字段=查询当月;----查询结果B

第三步、查询出: 查询结果B.A字段值=查询结果A.C字段值 且 查询结果B.G字段值-查询结果A.C字段值>=0 且 查询结果B.G字段值-查询结果A.C字段值<=3;

第三步、查询出: 查询结果B.A字段值=查询结果A.C字段值 且 查询结果B.G字段值-查询结果A.C字段值>=0 且 查询结果B.G字段值-查询结果A.C字段值<=3 的记录;

第四步、查询出: 查询结果B.A字段值=查询结果A.C字段值 且 查询结果B.G字段值-查询结果A.C字段值>=0 且 查询结果B.G字段值-查询结果A.C字段值<=15 的记录;

第五步、把第三、第四步的查询结果按照如下字段排列显示出来 :

B库.A字段 A库.A字段 A库.B字段 A库.F字段 A库.G字段 A库.H字段 A库.I字段 B库.B字段 B库.C字段 B库.D字段 B库.F字段 B库.G字段


希望用SQL命令实现上述需求。"



















...全文
313 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
bingdao2004 2013-04-30
  • 打赏
  • 举报
回复
引用 15 楼 u010496133 的回复:
[quote=引用 13 楼 bingdao2004 的回复:] 嗯,你先在查询分析器里面试试,确保两张表在同一个数据库里面。还有是在TXT中写的,电脑上没装数据的东东,如果报错看看空格的地方重新敲哈空格。
我看你的语句 题目中要求的'G字段=查询当月' 而你写的 AND year(G字段) = DATEPART(YEAR,GETDATA()) AND month(G字段) = DATEPART(MONTH,(GETDATA() ) 这个应该不行吧 需要将其合并 他是一个日期 不是分开的[/quote] 我晕,这个肯定是没问题的。当月查询这样写是最简单的啊。你查了看结果。年=当前年度,月=当前月份不就是G字段=查询当月吗?你还得专门把两个日期转换成年月字符串来比较啊,那样太麻烦了你看起来也很累LEFT(CONVERT(VARCHAR(6),G字段,112),4) =LEFT(CONVERT(VARCHAR(6),GETDATE(),112),4) 。
bingdao2004 2013-04-29
  • 打赏
  • 举报
回复
嗯,你先在查询分析器里面试试,确保两张表在同一个数据库里面。还有是在TXT中写的,电脑上没装数据的东东,如果报错看看空格的地方重新敲哈空格。
voodoo9000 2013-04-29
  • 打赏
  • 举报
回复
引用 11 楼 bingdao2004 的回复:
-- 1 SELECT * FROM A库表名 WHERE D字段='江苏' AND E字段='航母' AND G字段 IS NOT NULL AND year(G字段) = DATEPART(YEAR,GETDATA()) AND month(G字段) = DATEPART(MONTH,(GETDATA() ) AND J字段='味精' --2 SELECT * FROM B库表名 WHERE C字段='江苏' AND D字段='航母' AND E字段='右' AND F字段='味精' AND G字段 IS NOT NULL AND year(G字段) = DATEPART(YEAR,GETDATA()) AND month(G字段) = DATEPART(MONTH,(GETDATA() ) --3 SELECT * FROM A库表名 A JOIN B库表名 B ON B.A字段=A.C字段 AND B.G字段- A.C字段 >=0 AND B.G字段- A.C字段值<=3 --4 SELECT * FROM A库表名 A JOIN B库表名 B ON B.A字段=A.C字段 AND B.G字段- A.C字段 >=0 AND B.G字段- A.C字段值<= 15 --5 SELECT B库.A字段, A库.A字段, A库.B字段, A库.F字段, A库.G字段, A库.H字段, A库.I字段, B库.B字段, B库.C字段, B库.D字段, B库.F字段, B库.G字段 FROM A库表名 A JOIN B库表名 B ON B.A字段=A.C字段 AND B.G字段- A.C字段 >=0 AND B.G字段- A.C字段值<= 15 在txt中写呢,没验证过,有错自己改改看。
-----------谢谢兄台!A库表名用A,B库表名用B即可 。因代码需要放在ASP网页里运行,试试看先,如果运行通过,在原来100分的基础上再追加50-100.俺帐号里总共才200分而已。
bingdao2004 2013-04-29
  • 打赏
  • 举报
回复
-- 1 SELECT * FROM A库表名 WHERE D字段='江苏' AND E字段='航母' AND G字段 IS NOT NULL AND year(G字段) = DATEPART(YEAR,GETDATA()) AND month(G字段) = DATEPART(MONTH,(GETDATA() ) AND J字段='味精' --2 SELECT * FROM B库表名 WHERE C字段='江苏' AND D字段='航母' AND E字段='右' AND F字段='味精' AND G字段 IS NOT NULL AND year(G字段) = DATEPART(YEAR,GETDATA()) AND month(G字段) = DATEPART(MONTH,(GETDATA() ) --3 SELECT * FROM A库表名 A JOIN B库表名 B ON B.A字段=A.C字段 AND B.G字段- A.C字段 >=0 AND B.G字段- A.C字段值<=3 --4 SELECT * FROM A库表名 A JOIN B库表名 B ON B.A字段=A.C字段 AND B.G字段- A.C字段 >=0 AND B.G字段- A.C字段值<= 15 --5 SELECT B库.A字段, A库.A字段, A库.B字段, A库.F字段, A库.G字段, A库.H字段, A库.I字段, B库.B字段, B库.C字段, B库.D字段, B库.F字段, B库.G字段 FROM A库表名 A JOIN B库表名 B ON B.A字段=A.C字段 AND B.G字段- A.C字段 >=0 AND B.G字段- A.C字段值<= 15 在txt中写呢,没验证过,有错自己改改看。
bingdao2004 2013-04-29
  • 打赏
  • 举报
回复
给我分,我帮你写,可是没有表名啊?
尘枫之泪 2013-04-29
  • 打赏
  • 举报
回复
引用 13 楼 bingdao2004 的回复:
嗯,你先在查询分析器里面试试,确保两张表在同一个数据库里面。还有是在TXT中写的,电脑上没装数据的东东,如果报错看看空格的地方重新敲哈空格。
我看你的语句 题目中要求的'G字段=查询当月' 而你写的 AND year(G字段) = DATEPART(YEAR,GETDATA()) AND month(G字段) = DATEPART(MONTH,(GETDATA() ) 这个应该不行吧 需要将其合并 他是一个日期 不是分开的
voodoo9000 2013-04-29
  • 打赏
  • 举报
回复
voodoo9000 2013-04-29
  • 打赏
  • 举报
回复
引用 7 楼 daiyueqiang 的回复:
真是苦力活,你这不是偷懒吗?
噢,明白大家说的力气活儿的含义了。哎呀,我略懂的是VFP,而且从没接触过SQL语句,加上现在得赶时间,请各位大侠帮帮忙。
voodoo9000 2013-04-29
  • 打赏
  • 举报
回复
引用 13 楼 bingdao2004 的回复:
嗯,你先在查询分析器里面试试,确保两张表在同一个数据库里面。还有是在TXT中写的,电脑上没装数据的东东,如果报错看看空格的地方重新敲哈空格。
大侠你好,图中的原意是说要对库A和库B的记录进行对应的多条件查询,最后显示出图中的最终结果。可否写成一句嵌套查询语句啊,这才符合代码需求。
daiyueqiang2045 2013-04-28
  • 打赏
  • 举报
回复
真是苦力活,你这不是偷懒吗?
voodoo9000 2013-04-27
  • 打赏
  • 举报
回复
不懂如何实现啊,时间又急,才发帖求助了
  • 打赏
  • 举报
回复
力气活 自己写
voodoo9000 2013-04-27
  • 打赏
  • 举报
回复
文字虽然很多,但其实就是在A、B两个库中多条件关联查询而已
voodoo9000 2013-04-27
  • 打赏
  • 举报
回复
如果经常使用SQL,应该容易的,就是一句select语句而已
唐诗三百首 2013-04-27
  • 打赏
  • 举报
回复
典型力气活儿.
MrYangkang 2013-04-27
  • 打赏
  • 举报
回复

怎么上传不了图片,上传给你看

34,590

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧