说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

以前我在CSDN看过类似的贴字,现在忘了这样的sql语句怎么写,请知情者赐教!!

编辑:说三道四文库 发布时间:2017-09-24 09:36
HTML文档下载 WORD文档下载 PDF文档下载
表1
  科室编码            费用名称            金额
     1                手术费              120
     1                检查费              80
     2                药费                230
     2                B超费               180
    ...               ....                ...
     .                  .                  .
     .                  .                  .
    ...               ....                ...
表2
  科室编码            科室名称
     1                外科
     2                内科
    ...              .....
     .                 .
     .                 .
     N                 放射科

要求输出表3
   科室名称           手术费      检查费     药费      B超    .......
    外科              120          80        0        0      ......
    内科               0           0         230     180     ......
    ....              ...         ...        ...     ...     ......


请CSDN上的兄弟姐妹支持
你用的SQL Server吗,可以用case语句写出来
我用的是sql server,请randy_mic(生于70年代)赐教
select a.科室名称,(select isNULL(金额,0) from b where a.科室编号=b.科室编号 and b.药费名称='手术费'),(select isNULL(金额,0) from b where a.科室编号=b.科室编号 and b.药费名称='检查费'),(select isNULL(金额,0) from b where a.科室编号=b.科室编号 and b.药费名称='药费'),(select isNULL(金额,0) from b where a.科室编号=b.科室编号 and b.药费名称='B超')) from 表1 a,表2 b
这是SQL Server可以实现的语句。
http://expert.csdn.net/Expert/topic/1366/1366777.xml?temp=.1545069 

看看
如果你的表1中的药费名称不是固定,也就是说可能动态增长并没有确定数目,那么实现起来很难。我帮你问问。
select b.科室名称,
sum(case a.费用名称 when a.手术费 then a.金额 else 0),
sum(case a.费用名称 when a.检查费 then a.金额 else 0),
sum(case a.费用名称 when a.药费 then a.金额 else 0),
................
from 表1 a,表2 b
where a.科室编码=b.科室编码
group by a.科室编码
哦,还不一样 ... 如果费用名称固定好写点,如果不固定楼主可不可以改改表结构 ? 用专门一个表来保存费用名称
to shaperock(单刀侠):谢谢您的关注,sorry,我还有一点没讲清楚,那就是表1中的费用名称不是固定的,因为表1是临时表,好比说B超费有时有,有时又没有,其它费用名称也类似。科室对应的费用名称也不固定。还请shaperock(单刀侠)继续关注,不胜感激!!!
to wjlsmail(计算机质子):先谢谢您的关注,改表结构的可能性不大,因为表1是我在存储过程中创建的临时表,它是由SQL语句插入的数据,请继续关注好吗?!
to bluemeteor(挂月):谢谢您的关注,sorry,我还有一点没讲清楚,那就是表1中的费用名称不是固定的,因为表1是临时表,好比说B超费有时有,有时又没有,其它费用名称也类似。科室对应的费用名称也不固定。用Case语句应该写不出来,还请bluemeteor(挂月)继续关注,不胜感激!!!
学习!!!!!!!!!!!!
你的问题应该这样写:

select b.科室名称, 
(case 费用名称 when 手术费 then 金额 else 0 end) 手术费, 
(case 费用名称 when 检查费 then 金额 else 0 end) 检查费,
(case 费用名称 when 药费 then 金额 else 0 end) 药费,
(case 费用名称 when B超 then 金额 else 0 end) B超,
from 表1 a, 表2 b where a.科室编码=b.科室编码 
group by b.科室名称,手术费,检查费,药费,B超
你的问题应该这样写:

select b.科室名称, 
(case a.费用名称 when 手术费 then a.金额 else 0 end) 手术费, 
(case a.费用名称 when 检查费 then a.金额 else 0 end) 检查费,
(case a.费用名称 when 药费 then a.金额 else 0 end) 药费,
(case a.费用名称 when B超 then a.金额 else 0 end) B超,
from 表1 a, 表2 b where a.科室编码=b.科室编码 
group by b.科室名称,手术费,检查费,药费,B超
请大家再顶一下,晚点结贴,我看
http://expert.csdn.net/Expert/topic/1366/1366777.xml?temp=.1545069 上XRS(心如水)这样的问题已结贴,不知他是怎样实现的?我按上面各位大侠的高见去做了,还是实现不了,有谁知道XRS(心如水)怎么做的吗?恳请联系XRS(心如水).
http://expert.csdn.net/Expert/topic/1529/1529397.xml?temp=.6069757,看看大力的,它得也许对。
结贴,敬请ShapeRock(单刀侠)、pengdail(大力)接份,万分感激您们及关注者
以下是个人意见,希望大家指正!

楼主的问题,很常见,
我使用过2种方法处理过:
1、前台(或者说客户端)处理 (第1种方法,我做过控件处理显示 预览 打印)
2、后台(数据库存储过程)处理(使用临时表辅助处理)
第2种方法(sql语句怎么写):
表1:(科室编码 ,费用名称 ,金额)
表2:(科室编码 ,科室名称)

1:create table #Temp (No int , Name varchar(30))

2:insert into #Temp  (No,Name)
   select distinct 科室编码 ,科室名称
   from 表2

3:declare @Money char(20)
   declare @iCount char(20)
   declare @FieldName char(21)
   set @iCount = 1

   declare MyMoney cursor for 
   select distinct 费用名称 
   from 表1

   open MyMoney
   fetch MyMoney into @Money
   while @@fetch_status = 0 
   begin
      set @FieldName = 'Field'+Rtrim(Convert(char(3),@iCount))
      Exec(N'alter table #Temp ADD ['+@FieldName+'] float ')      
      
      Exec(N'update #Temp set ['+@FieldName+']='+
            'isnull(表1.金额,0) from 表1 where #Temp.No =表1.科室编码 and '+
            '表1.费用名称 = '+'"'@Money+'"')      
      

      fetch MyMoney into @Money
      set @iCount = @iCount +1
   end
   close MyMoney
   deallocate MyMoney

4:select * from #Temp
   order by No

最终显示结果:
No      Name      Field1    Field2    Field3    Field4 ....
====    ========  ========  ========  ========  ========
还需要作的事情,把英文的字段名,转换成中文
英特尔物联网世界:提供开发工具包,实现万物互联 三十功名尘与土——我的程序员生涯自白 触摸未来:为什么说AR是未来最重要的人机界面? 科普:谈云计算中间件理念 能准确“猜透”玩家心理,深度学习让游戏更智能 阿里过程改进专家:看板核心在于拉动式管理过程+数据化支持改进 英特尔Edison全面上市,专为小型可穿戴设备设计 APM最佳实践:Web 2.0和AJAX四大优化战略 开放•创新•共赢 2014华为开发者联盟沙龙即将开幕 排名前十的SQL和NoSQL数据库 干货议题,中国互联网安全大会免费门票等你来! 【云先锋】红象云腾:Hadoop将和高铁一样改变我们的生活 IDF 2014上开发者最应关注的三件事之:原生应用兼容性篇 《近匠》WRTnode创始人罗未:OpenWrt,下一个时代的Android AMD爆新一代架构,代号Zen! 【问底】严澜:数据挖掘入门——分词 顺丰集团IT副总裁徐庆强:信息化技术支撑高质量服务 【CTO俱乐部走进雅虎北京全球研发中心】活动图文实录 病毒式传播到商业价值,Docker开创以开发者为主导的商业模式 一周消息树: Windows 9系统截图大量曝光,一起来看看它长什么样! 腾讯李朝晖:不移动非互联,投资关注四大领域 【问底】Yao Yu:谈Twitter的百TB级Redis缓存实践 “OKCoin与你·北京一夜”:共商比特币可持续繁荣之道 苹果再发力:推Apple Pay,或将引发新一轮支付变革 CausalImpact,谷歌开源的R时域因果关系分析工具 腾讯云总裁陈磊:互联网和传统企业互联网化是主线 不得不看,苹果Pay技术大起底! 详解Apple Pay:一大波iOS原生应用正在逼近! 高性能微信公众平台开发 【先锋】事务、高性能,王涛谈打造超越MongoDB的NoSQL 浅谈互联网数据中心海量运营之道 大哥们, 为什么老是发出更新临时表的警告窗口? 双机互连上广域网SOS,高分致谢! 请问有哪些方法可以统计线程之间创建顺序的序列号? 请问:用web服务可以做到把一个信息用短信的形式发送到指定的手机里吗? 老机,win98引导format后,找不到光驱,以前是要将驱动程序搞到里面去,再执行setup,我不知道怎个搞法? warton申明! 老问题新难点(数据窗口) 求助!!!为什么我的写在DREAMWEAVER里的ASP程序没被IIS执行 在WIN98下C盘里面没有光驱显示?怎么回事? 新手装oralce9i的问题??? 为什么程序员找女朋友难? 急问dreamveaver的数据库的连接问题,就是与数据库的测试,绑定问题?谢先了! 我的TDBEDIT中文出现异常,请近来看看! 请问在access中如何判断是否存在指定表名的表? 如何知道事件是由那个控件接收的?? 两个小问题! 在PB8中怎样用Access数据库。求各位大虾帮帮忙!!!!!! 为什么装了delphi我的SQL SERVER 2000的企业管理器就不能用????? 我的这台机子今天一开机,当内存检测完了以后就再也进行不下去了,连COMS都进不去了。这是怎么回事?我该怎么办? 一个很菜的问题 jsp中与mysql连接是出现的问题,高手帮忙 请问在VB中如何使用IP助手函数GetAdaptersInfo取得MAC地址? w18ily进来一下,其余的就不要进来啦... 为什么这里的网页不能保存呢? 插件与控件有什么不同? 我搞不明 请教 讨论:于jsp搭配,最好最使用的数据库是什么!大家踊跃发言呀,来着有分!!! 特别推荐 真的可以免费下载好多电影 关于进度条和ADOQUERY的问提 记者采访广东省人大法工委办公室,得到了明确的答复:仅缺暂住证,是不能收容的。 HOW CAN I IMPLEMENTATION THE MFC/OLE Idispatch INTERFACE 一个脚本病毒代码,请高手分析一下 【狂人】进来领分 NO.1 如何用ASP判断客户文件是否存在,之后转到不同的页面 【狂人】进来领分 NO.2 【狂人】进来领分 NO.3 高手帮助:请帮助看看这个ADO处理的问题是如果造成的? 【狂人】进来领分 NO.4 【狂人】进来领分 NO.5 RH8不能识别VIA芯片组主板的板载声卡 [高分求助] 关于win2000软件路由的问题 高分(答者有分,不够另开贴)-GSM抄表系统的短消息网关和数据库连接问题 不管ie窗口大小如何,隐藏层显示后总是居于窗口正中,谁有这样的脚本?? GetWindowThreadProcessId? 为什么找不到程序入口点??? 如何去掉字串右边(或者中间)的空格? 哪位能全面的解释一下“数据驱动”。 高分寻找php 上传 文件脚本 totodo大哥进来一下! 100分求解:ActiveX控件在网页中用,如何使弹出的第二个form一直居于网页上层?--在线等 一个w2k server网页显示的问题 某年级组织春游,如果组35个座位的客车需要4辆,如果组42个座位的客车需要3辆.到达景点后要求分组活动,且分组的组数和每组的人数恰好相等,则此年级共有多少人参加春游活动? someone做主语时,谓语动词通常用于什么形式 先锋工作室 用英文怎么说 如何辨别蚂蚱(蝗虫)的雌雄?我不要什么看产卵器什么的,我要看脚之类的比较方便的.而且是看褐色的蚂蚱.听人说有一种方法是看脚上的斑纹,是褐色的就是母的,是黑色的就是公的.是真的么 一种尾部一黄一黑的蜜蜂是什么蜜蜂个头比较大身长3-4cm翅膀是长的那种.颜色是深黄和黑是什么蜜蜂啊 我被蛰了一下. 有没有关于“培养好习惯”的书?就是那种儿童读物、教育类型的. 385人准备租车回家过年,现知道出租公司有42座和60座两种客车,42座客车的租金每辆为320元,60座客车租金每辆为460元.(1)若这些外出务工人员单独租用这两种客车,各需多少钱?(2)若这些外出 细菌能使物质发霉么 有形状长短一样的红.黄.蓝.黑.白五中筷子各25根,在黑暗中至少摸出多少才能保证有8双同色? 动物在择偶时,往往是雌性个体选择雄性个体?为什么? spss信度分析 神马意思,求求求求求比如说一份问卷,信度分析是做题和题之间的呢,还是一题中选项和选项之间的呢?如果是题和题之间的,变量要怎么输入呢?单选多选题一样么?大于多少是有效 有形状长短都完全一样的红色,黑色,白色,黄色,紫色,浅蓝色筷子各25根.小华闭上眼睛摸,至少应摸出多少根筷子,才能保证摸出的筷子至少有8双(两根同色筷子为一双). what's it look like语法有错吗在FRIENDS里面看到得,what's it look like 看起来像什么这个语法上有错误,但是不知道是不是口语里就这么用,谢谢有懂得人能够给与解答,如果是口语的话,能不能举一些跟 成长路上有书的作文 有形状长短一样的红.黄.蓝.黑.白五中筷子各25根,在黑暗中至少摸出多少才能保证有8有形状长短一样的红.黄.蓝.黑.白五中筷子各25根,在黑暗中至少摸出多少才能保证有8双同色? what's grandma like?这个句子有语法问题吗?我知道what does grandma look like?是对的 作文《我在书中成长》430字左右 “东方睡狮”指的是什么.这句话的意思是什么“东方雄狮现在不仅已经睡醒站了起来,而且已经奔跑了起来” 关于《与朱元思书》的几个问题1.描绘富春江全景的句子:2.概括山水特点的句子:3.用夸张写出江水清的句子:4.侧面写出江水清的句子:5.写出作者悠闲自得心态的句子:6.写出江水湍急的句 不明白what is the weather like?为什么加like.用what is the weather不行吗?他的解释什么what后得加介词我不是很明白求解释?还有weather前必须加the吗? 急需关于我和书一起长大的文章. 《与朱元思书》有关的问题大家认为这篇文章描写的季节是夏季,还是秋季?能暗示文章季节的一个字是蝉,寒,还是其他的?简述理由. 请告诉我一些成句,比如:螳螂捕蝉,黄雀在后.再比如:哑巴吃黄连,有苦说不出. 英语翻译把:萤火虫、带我走 的英文翻译出来,我急着需要, 找一道有关《与朱元思书》的题有关与朱元思书翻译的.一句原文.ABCD四个选项分别是翻译.只有一个是正确的. 单数复数含义是什么?英语怎么区分单数复数 ,什么是单数 什么又是复数 什么是重瞳.项羽是重瞳? 关于《与朱元思书》的题文中作者表达的情怀在我国古代许多作家哪里都得到了共鸣,请写出其中以为以及他的代表作品 请问这是什么昆虫? 何谓“重瞳”?如题在古书上描述强人的时候都会有这个描写来神话,现在也有人在思考这个问题.搜狐论坛上看到了关于重瞳是什么的贴子, 蔺相如和廉颇各有哪些好品质,通过哪些事来表现?o(╯□╰)o 双瞳是什么? 听说舜,大禹,李煜都是重瞳, 政治学什么东西? 电影《双瞳》到底讲了个什么样的故事?到底讲了什么啊,真相是什么,我没看懂~ 双目重瞳是什么意思 昆虫的发育都是变态发育.对还是错? 《双瞳》讲的是什么啊?怎么看的乱七八糟的?有什么霉菌,小女孩儿,道教的.还有一块儿,一个警察被带到一个地方杀死了.奇奇怪怪的.没看明白.有谁比较厉害,我想知道最后是什么意思是. 狮猫》的译文 两栖类在发育方面的突出特征(在线等) 双瞳电影什么意思 狮猫斗硕鼠 的译文万历间,宫中有鼠,大与猫等,为害甚剧.遍求电间'>民间佳猫捕制,辄被啖食.适异国来贡狮猫,毛白如雪.抱投鼠屋,阖其扉,潜窥之. 猫蹲良久,鼠逡巡自穴中出.见猫,怒奔之.猫避登 如何 清洗 激光发射器 和 分光棱镜 和反射镜做光学实验,其中的激光发射器 和 一些反射的 镜片 怎么清理 什么是双瞳目 一种蜜蜂 体色呈黑色 后半部分有明黄色条纹 是什么峰种? 一只小蚂蚁从长方体顶部点A沿棱爬行,再回到点A,不走重复,最多要爬都少厘米?(长16 宽10 高5) 有一首儿童的字母歌,是a is an apple a a a,b is a banana b b b,c is a cake c c c请问叫什么名字啊? 激光切割机为什么镜子发热水管爆裂 蚂蚁在 长方体的 盒子沿棱爬行 从一点出发再回此点,最多爬行多少米,路线是?立方体是出现的 甘肃地震后的情况,全面一点, 什么是质量目标?对质量目标的要求? 如下图,一只小蚂蚁从长方形顶部点沿棱爬行,再回到八点A,不走重复路线,最少要爬都少厘米?长16厘米宽8厘米高5 体育馆入场券3元一张,若降价后观众增加一半,收入增加四分之一,那每张入场券降价多少元?要算式! 以质量体系为根本,以提高产品性能为出发点,以满足各种行业客户的需求为目标,用英语怎么说 某年级组织春游,如果租35个座位的客车需要4辆,如果租42个座位的客车需要3辆.到达景点后要求分组活动,且分得的组数跟每组的人数恰好相等,则此年纪共有多少人参加春游活动? 这是什么蜘蛛?有毒吗?如图:身体部分长约2CM,宽1CM,算上八条长腿的话,直径10CM,比巴掌都大了.家里经常出现这种蜘蛛,急切想知道它有没有毒?有毒的话,毒性强吗?会主动攻击人类吗?如何攻击? 求缩句帝.“以稳定的品质满足顾客需求,以持续的改善塑造国际知名” 怎样分辨蝗虫(蚂蚱)的雌雄? ---头像苍蝇,头颈也是黄色的,全身黑的“蜜蜂”家蜂蜂巢闯入---- 头像苍蝇,头颈也是黄色的,全身黑的“蜜蜂” 飞起来很快带“问问”声 .请问各位大虾:需要采取措施吗? (先锋)英文怎么写同上 受上万月薪诱惑 有大学生不想读书想当加拿大密西沙加市华人专商协会为弱者筹昼夜温差超10℃ 早晚记得添衣西湖五处码头装避雷针 外包仿真藤色调失踪小驴友的尸体终于找到 距发现头骨国企携大单与民企对接 诚意足够但难消秋风阵阵喷嚏连天 不是感冒是过敏钓鱼岛史上从未属日本2000万港元赔款大多来自华人捐助印火星探测器欲争亚洲第一老虎VS小麦,谁是王中王?“娜”功败垂成总理被窃听伤了德国人的心一起来做“土豪”吧!日本学者著书称:钓鱼岛从历史上看从未我海军抗干扰西太平洋演练合同打击纽约华裔社区发生命案5人被杀 死者包悉尼歌剧院走过40年美丽旅程欧债危机对欧盟的重新排序全球最大海上书店抵达巴林中俄舞台艺术对话举办手续不齐全,市场就开张?(曝光)说说旅游中的烦心事儿(4)面对拥挤,我们措手不及(读者论坛)告别温暖 冷空气今天杀到 降温4℃~扩散周知!手机实名制后,最新诈骗短信一天两练强化进攻郭艾伦明晚比赛有望复出竞彩篮球投注技巧冷空气来袭!天津气温大跳水泸溪整合1.7亿元助力医疗扶贫允许科研人员和教师芷江地税为纳税人“把脉问诊”教授指导养土鸡 博士示范剁辣椒天蓝水碧雁城美菊花朵朵富村民“立冬”吃饺子鹤城区地税局“e+”办税平台十二届全国人大常委会第二十四次会议闭青春如歌主旋律更响亮 正能量更强劲你不办案子我就“打板子”
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘