新增升级问题针对:求sql单语句,统计功能,增加一个检查部位个数的,

一品梅 2012-05-29 01:01:56
一品梅 16:18:53
Select T_STUDY_REPORT.F_STU_REFER_DOCTOR As 送诊医生,T_STUDY_body as 检查部位,Count(T_STUDY_BASIC.F_STU_GUID) As 检查量,Sum(T_STUDY_STAT.F_STU_FARE) As 费用 From [数据表] Where [日期:T_STUDY_BASIC.F_STU_DATE] Group By T_STUDY_REPORT.F_STU_REFER_DOCTOR,T_STUDY_body
一品梅 16:21:45
检查部位 举例:头颅/腹部/颈椎 这就算三个部位,我想添加一个字段,计算部位个数的,请不用自定义函数,您能帮我写下吗?呵呵
可口可乐 16:23:55
也就是 每个部分都可能有 多次么?
你弄短一点这个字段名, 然后 举例一些数字 这样好看一点。
一品梅 16:27:39
检查部位是一个字段:T_study_body 这个字段可以有多个部位,也可以有一个部位,如果多个的话,用/隔开,现在就是想统计总共的部位


正确答案:
Select T_STUDY_REPORT.F_STU_REFER_DOCTOR As 送诊医生,T_STUDY_body as 检查部位,sum(len(T_STUDY_body)-len(replace(T_STUDY_body,'/','')) + 1) as 部位数, Count(T_STUDY_BASIC.F_STU_GUID) As 检查量,Sum(T_STUDY_STAT.F_STU_FARE) As 费用
From [数据表] Where [日期:T_STUDY_BASIC.F_STU_DATE]
Group By T_STUDY_REPORT.F_STU_REFER_DOCTOR,T_STUDY_body
--------------------------------------------------------------------------------------------------------
我现在遇到一新问题,就是分隔符不固定,可以设置为,\/;等,根据书写医生喜好。
请问这样语句怎么写啊?
原帖地址:http://topic.csdn.net/u/20120331/16/29d971b0-9da3-4c0e-a72d-3b1f6c9bb329.html
...全文
156 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
cxmcxm 2012-05-29
  • 打赏
  • 举报
回复
这样的东东,最好加一字段,在insert记录之前将医生的原始记录转为你能接受的格式,放于新加的字段中
黄_瓜 2012-05-29
  • 打赏
  • 举报
回复
[Quote=引用 12 楼 的回复:]

手动输入会出现输错、漏输等错误。
================
这个你放心,不会漏输的,程序有控制,比如点ctrl键才能多选选项。
[/Quote]
你能控制他输入的是/ 还是, 还是;。。。。。。。。。。。。。。。。
那你把所有可能的符号都replace一下
replace(replace(name,'/',''),';','')一直写下去。
一品梅 2012-05-29
  • 打赏
  • 举报
回复
手动输入会出现输错、漏输等错误。
================
这个你放心,不会漏输的,程序有控制,比如点ctrl键才能多选选项。
黄_瓜 2012-05-29
  • 打赏
  • 举报
回复
我擦,这个问题呢。。应该是在选择端去控制的,不为名称应该用一个选择框 让医生选择
,他选几个都行,然后程序处理用一个统一的符号隔开。

不是说他想输入什么隔开就输入什么的,手动输入会出现输错、漏输等错误。
一品梅 2012-05-29
  • 打赏
  • 举报
回复
不会,你帮我写吧,可能要用到正则表达式。
黄_瓜 2012-05-29
  • 打赏
  • 举报
回复
自己解决了?
一品梅 2012-05-29
  • 打赏
  • 举报
回复
各位大大们都调动你们的小脑瓜吧。。。
Felixzhaowenzhong 2012-05-29
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 的回复:]
前提:只能写语句,不能写函数和存储过程。因为我们程序调用的只允许写语句,还是sqlite,这个没问题,语法差不多,剩下的我能翻译。
[/Quote]

那在你的程序里定义一个接受字符的变量。将这个变量放到你的SQL 里不就可以了。不过这样的话你的拼接SQL 。
一品梅 2012-05-29
  • 打赏
  • 举报
回复
医生书写报告单,以后统计的时候根据报告单的一个检查部位字段进行计算费用。
--小F-- 2012-05-29
  • 打赏
  • 举报
回复
这个是做什么?
一品梅 2012-05-29
  • 打赏
  • 举报
回复
前提:只能写语句,不能写函数和存储过程。因为我们程序调用的只允许写语句,还是sqlite,这个没问题,语法差不多,剩下的我能翻译。
Felixzhaowenzhong 2012-05-29
  • 打赏
  • 举报
回复
定义一个变量作为参数(,\/;) 传入。

34,593

社区成员

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

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