高手们!!!!!sql语句怎么样写才得到这样的查询结果??? (20分外加另一同类问题的贴的35分)

wen_xx 2004-10-17 02:49:13
高手们!!!!!sql语句怎么样写才得到这样的查询结果???
http://community.csdn.net/Expert/topic/3462/3462238.xml?temp=.5607569

我想得到的查询结果

货号 销售金额 进货金额 成本金额
xsqd_hh xsqd_money jhqd_money cbqd_money
9527 300 200 100
27 301 201 101


-- hh 代表货号 money代表钱(.....有废话嫌疑)
--销售
create table xs
(xsqd_id bigint identity(1,1) not null,
xsqd_hh varchar(20),
xsqd_money decimal(18,4)
)
go

--进货
create table jh
(jhqd_id bigint identity(1,1) not null,
jhqd_hh varchar(20),
jhqd_money decimal(18,4)
)
go

--采购也可以说是成本
create table cb
(cbqd_id bigint identity(1,1) not null,
cbqd_hh varchar(20),
cbqd_money decimal(18,4)
)
go

insert cb(cbqd_hh,cbqd_money) values('9527',100)
insert jh(jhqd_hh,jhqd_money) values('9527',200)
insert xs(xsqd_hh,xsqd_money) values('9527',300)

insert cb(cbqd_hh,cbqd_money) values('27',101)
insert jh(jhqd_hh,jhqd_money) values('27',201)
insert xs(xsqd_hh,xsqd_money) values('27',301)

insert cb(cbqd_hh,cbqd_money) values('8',103)
insert cb(cbqd_hh,cbqd_money) values('7',102)
insert jh(jhqd_hh,jhqd_money) values('7',202)
...全文
123 7 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
wen_xx 2004-10-17
  • 打赏
  • 举报
回复
不至少数量不同
pjy 2004-10-17
  • 打赏
  • 举报
回复
进货表中会有同样货号的纪录存在,此时是所有的字段都相同吗?
select xs.*,jh.*,cb.*
from xs
left join
(Select top 1 * from jh group by jhqd_hh) as jh on xs.xsqd_hh=jh.jhqd_hh
left join
cb on xs.xsqd_hh=cb.cbqd_hh
郑燕辉 2004-10-17
  • 打赏
  • 举报
回复
你是在哪个里面用的,是用哪类编程语言写的。
如果是在SQL查询分析器里,这就是正确的。
我知道你是怎么的了。你把你的表删了,新建一次表
再插入一次数据。
记住,数据库中不能有相同的两行内容。
这个是必须的,一定不能有。
你看看不就可以了
wen_xx 2004-10-17
  • 打赏
  • 举报
回复
唉……
thanks 这样不行,我原来就是这样写的.
郑燕辉 2004-10-17
  • 打赏
  • 举报
回复
这样写你看看可以了吗?
select xs.xsqd_hh,xs.xsqd_money,jh.jhqd_money,cb.cbqd_money from xs,jh,cb where (xs.xsqd_hh=cb.cbqd_hh and cb.cbqd_hh=jh.jhqd_hh)
wen_xx 2004-10-17
  • 打赏
  • 举报
回复
进货表中会有同样货号的纪录存在,问题也就出在这里,如果没有的话,就原来插入的数据。这个语句就可以得到我自己想要的数据了.
select xs.*,jh.*,cb.*
from xs
left join
jh on xs.xsqd_hh=jh.jhqd_hh
left join
cb on xs.xsqd_hh=cb.cbqd_hh
wen_xx 2004-10-17
  • 打赏
  • 举报
回复
不!!请再插入一条纪录
insert jh(jhqd_hh,jhqd_money) values('9527',200)

34,837

社区成员

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

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