select
a.createtime, -- 日期
dept.name as deptName, -- 科室
(select t.docname from (
SELECT u.clinic_id AS clinicid, u.id AS docid,u1.property_value AS docname
FROM thc_warehouse.staff_record u
LEFT JOIN thc_warehouse.staff_record_property u1 ON u1.property_code = 'SXX000083' AND u.id = u1.staff_record_id
) t where t.docid = a.orderDoctor ) AS doctor -- 医生
e.outpatient_number, -- 门诊编号 档案号
p.name, -- 客户名字
p.age, -- 年龄
p.country, -- 国籍/语言
p.language, -- 语言
b.itemClassName, -- 项目类型
b.itemName, -- 项目名称
-- b.fatherItemClassName,
-- b.itemDisName, -- b.returnQuantity, -- 退货数量
b.price, -- 原单价
ROUND(b.discount * 100,0), -- 折扣比
round(b.price * b.quantity,4) as subPrice, -- 折后价
b.quantity, -- 购买数量
b.amount, -- 折后总金额
b.preFee, -- 原总价 from
`thc_rcm`.`Cs_AccountBill` a
INNER JOIN `thc_rcm`.`Cs_AccountBillDetail` b on a.id =b.AccountBillId
INNER JOIN `thc_passport`.`patient` p on a.patientID = p.id
INNER JOIN `thc_sob`.`bpm_serv_provider` dept on a.clinicID = dept.id
LEFT JOIN `thc_passport`.`patient_org` e on a.patientID = e.patient_id
LEFT JOIN `thc_passport`.`contact` i on a.patientID = i.patient_id where `quantity` > 0 and a.is_refund = 0 and b.returnQuantity < b.`quantity` -- and b.`returnQuantity` > 0; select * from thc_sob.bpm_serv_provider
select
a.createtime, -- 日期
( select name from `thc_passport`.`city` where id =
(
select JSON_UNQUOTE(JSON_EXTRACT(property_value,'$.city'))
from `thc_warehouse`.`clinic_property`
where property_code = 'SXX000059'
and property_value is not null
and JSON_UNQUOTE(JSON_EXTRACT(property_value,'$.city')) is not null
and clinic_id = a.clinicID
)
) as zenSuoCity, -- 城市
(select property_value from `thc_warehouse`.`clinic_property` where property_code = 'SXX000055' and clinic_id = a.clinicID) as zenSuo, -- 诊所
(select property_value from `thc_warehouse`.`clinic_property` where property_code = 'SXX000063' and clinic_id = a.clinicID) as zenSuoCode, -- 诊所代码
dept.name as deptName, -- 科室
(select t.docname from (
SELECT u.clinic_id AS clinicid, u.id AS docid,u1.property_value AS docname
FROM thc_warehouse.staff_record u
LEFT JOIN thc_warehouse.staff_record_property u1 ON u1.property_code = 'SXX000083' AND u.id = u1.staff_record_id
) t where t.docid = a.orderDoctor ) AS doctor, -- 医生
e.patient_number, -- 档案号
p.name, -- 客户名字
p.age, -- 年龄
p.country as countryBak,
p.language as languageBak,
(
select bb.name
from `thc_warehouse`.`sys_type` aa
join `thc_warehouse`.`sys_type_info` bb on aa.id = bb.sys_type_id
where aa.code = 'THC_RCM_COUNTRY' and bb.id = p.country
) as country, -- 国籍
(
select bb.name
from `thc_warehouse`.`sys_type` aa
join `thc_warehouse`.`sys_type_info` bb on aa.id = bb.sys_type_id
where aa.code = 'PASSPORT_LANGUAGE' and bb.id = p.language
) as language, -- 语言 b.itemClassName, -- 项目类型
b.itemName, -- 项目名称
b.price, -- 原价
ROUND(b.discount * 100,0), -- 折扣比
round(b.price * b.quantity,4) as subPrice, -- 折后价
ROUND(b.quantity,0), -- 数量
b.amount, -- 折后总金额
b.preFee -- 原总价
from
`thc_rcm`.`Cs_AccountBill` a
INNER JOIN `thc_rcm`.`Cs_AccountBillDetail` b on a.id =b.AccountBillId
INNER JOIN `thc_passport`.`patient` p on a.patientID = p.id
INNER JOIN `thc_sob`.`bpm_serv_provider` dept on a.clinicID = dept.id
INNER JOIN `thc_passport`.`patient_org` e on a.patientID = e.patient_id where a.is_refund = 0 and `quantity` > 0 and b.returnQuantity < b.`quantity` -- and b.`returnQuantity` > 0; limit 10; select b.
from `thc_warehouse`.`clinic` a
join `thc_warehouse`.`clinic_property` b on a.id = b.clinic_id
where a.id in (1,2002)
order by b.clinic_id,b.property_code -- join `thc_warehouse`.`clinic_property_value` c select b.code,b.name,b.value,b.id
from `thc_warehouse`.`sys_type` a
join `thc_warehouse`.`sys_type_info` b on a.id = b.sys_type_id
where a.code = 'THC_RCM_COUNTRY'
order by value select * from `thc_warehouse`.`sys_type_info` where code like 'htc_00000009%'; select id,name from `thc_passport`.`city` where id like '___0000000' select * from `thc_passport`.`city` where id not like '___0000000' and id = REGEXP '1010[1-9]{1}[0-9]?'

SQL2:消费项目汇总统计


select
( select name from `thc_passport`.`city` where id =
(
select JSON_UNQUOTE(JSON_EXTRACT(property_value,'$.city'))
from `thc_warehouse`.`clinic_property`
where property_code = 'SXX000059'
and property_value is not null
and JSON_UNQUOTE(JSON_EXTRACT(property_value,'$.city')) is not null
and clinic_id = a.clinicID
)
) as zenSuoCity, -- 城市
(select property_value from `thc_warehouse`.`clinic_property` where property_code = 'SXX000055' and clinic_id = a.clinicID) as zenSuo, -- 诊所
(select property_value from `thc_warehouse`.`clinic_property` where property_code = 'SXX000063' and clinic_id = a.clinicID) as zenSuoCode, -- 诊所代码
dept.name as deptName, -- 科室
(select t.docname from (
SELECT u.clinic_id AS clinicid, u.id AS docid,u1.property_value AS docname
FROM thc_warehouse.staff_record u
LEFT JOIN thc_warehouse.staff_record_property u1 ON u1.property_code = 'SXX000083' AND u.id = u1.staff_record_id
) t where t.docid = a.orderDoctor ) AS doctor, -- 医生
b.itemClassName, -- 项目类型
b.itemName, -- 项目名称
ROUND(sum(b.quantity),0) AS quantity, -- 总数量
sum(b.preFee) as sumFee, -- 原价总价
sum(b.amount) as subSumFee -- 折后总金额
from
`thc_rcm`.`Cs_AccountBill` a
INNER JOIN `thc_rcm`.`Cs_AccountBillDetail` b on a.id =b.AccountBillId
INNER JOIN `thc_sob`.`bpm_serv_provider` dept on a.clinicID = dept.id
where
a.is_refund = 0 -- 是买非退
and b.quantity > 0 -- 数量大于0
and b.returnQuantity < b.quantity -- 未退完的
group by b.itemClassName,b.itemName
-- limit 10

SQL3 monthly sale report(统计人次)


select
b.* from
`thc_rcm`.`Cs_AccountBill` a
INNER JOIN `thc_rcm`.`Cs_AccountBillDetail` b on a.id =b.AccountBillId
INNER JOIN `thc_rcm`.`Cs_SettlementDetail` d on d.accountBillDetailID = b.id and d.accountBillID = a.id
INNER JOIN `thc_rcm`.`Cs_Settlement` c on c.id = d.settlementID
INNER JOIN `thc_passport`.`patient` p on a.patientID = p.id
INNER JOIN `thc_sob`.`bpm_serv_provider` dept on a.orderDept = dept.id
INNER JOIN `thc_passport`.`patient_org` e on a.patientID = e.patient_id where
a.is_refund = 0 -- 是买非退
and b.quantity > 0 -- 数量大于0
and b.returnQuantity < b.quantity -- 未退完的
limit 10 ${if(len(startTime) == 0,"","AND a.createtime >= '" + startTime + "'")} -- 开始时间
${if(len(endTime) == 0,"","AND a.createtime <= '" + endTime + "'")} -- 结束时间
${if(len(zenSuo) == 0,"","AND a.clinicID = '" + zenSuo + "'")} -- 诊所
${if(len(zenSuoCode) == 0,"","AND a.clinicID = '" + zenSuoCode + "'")} -- 诊所代码
${if(len(deptId) == 0,"","AND a.orderDept = '" + deptId + "'")} -- 科室
${if(len(doctor) == 0,"","AND a.orderDoctor = '" + doctor + "'")} -- 医生
${if(len(patientNum) == 0,"","AND e.patient_number like '%" + patientNum + "%'")} -- 客户档案号
${if(len(itemClassName) == 0,"","AND b.itemClassName like '%" + itemClassName + "%'")} -- 项目类型
${if(len(itemName) == 0,""," AND (b.itemName like '%" + itemName + "%' or b.itemCode like '%"+ itemName + "%')")} -- 项目
) t
where 1=1
${if(len(city) == 0,"","AND t.zenSuoCity = '" + city + "'")} -- 城市
order by t.createtime desc

新SQL temp的更多相关文章

  1. Oracle 11g新特性

    文章转自网络 Oracle 11g于2007年7月11日美国东部时间11时(北京时间11日22时)正式发布,11g是甲骨文公司30年来发布的最重要的数据库版本,根据用户的需求实现了信息生命周期管理(I ...

  2. 11g新特性-概述 (转)

    一.新特性提纲 1.数据库管理部分 ◆数据库重演(Database Replay) 这一特性可以捕捉整个数据的负载,并且传递到一个从备份或者standby数据库中创建的测试数据库上,然后重演负责以测试 ...

  3. Oralce 11g新特性 转载

    Oracle 11g于2007年7月11日美国东部时间11时(北京时间11日22时)正式发布,11g是甲骨文公司30年来发布的最重要的数据库版本,根据用户的需求实现了信息生命周期管理(Informat ...

  4. SQL Server中的事务日志管理(7/9):处理日志过度增长

    当一切正常时,没有必要特别留意什么是事务日志,它是如何工作的.你只要确保每个数据库都有正确的备份.当出现问题时,事务日志的理解对于采取修正操作是重要的,尤其在需要紧急恢复数据库到指定点时.这系列文章会 ...

  5. 使用第三方分页AspNetPager实现真正分页的SQL原理

    AspNetPager是一个第三方分页第三方控件,可以和数据绑定控件(GridView等)方便的结合,实现真分页. 真分页:从数据库中获取符合要求的部分数目的记录.性能较高,数据量小,网络负载小,对数 ...

  6. SQL Server数据库中还原孤立用户的方法集合

    虽然SQL Server现在搬迁的技术越来越多,自带的方法也越来越高级. 但是我们的SQL Server在搬迁的会出现很多孤立用户,微软没有自动的处理. 因为我们的数据库权限表都不会在应用数据库中,但 ...

  7. 针对大的sql文件删除行操作

    今天处理开发已导出的库的一个sql文件.未gzip压缩 ,1.3G 需要删除 17 18 24行的SET行. 想到了两个办法 1  sed 方法 主意 由于 sed 虽然指定行 进行 替换, 也会读完 ...

  8. PL/SQL常用设置 可看引用位置更清晰直观 引自:http://blog.csdn.net/xiaoqforever/article/details/27695569

    引自:http://blog.csdn.net/xiaoqforever/article/details/27695569 1,登录后默认自动选中My Objects 默认情况下,PLSQL Deve ...

  9. 微软ASP.NET网站部署指南(10):迁移至SQL Server

    1.  综述 第2章的部署SQL Server Compact和第9章的部署数据库更新里解释了为什么终于要升级到完整版SQL Server .本章节将告诉你怎样来做. SQL Server Expre ...

随机推荐

  1. Codeforces 1079D Barcelonian Distance(计算几何)

    题目链接:Barcelonian Distance 题意:给定方格坐标,方格坐标上有两个点A,B和一条直线.规定:直线上沿直线走,否则沿方格走.求A到B的最短距离. 题解:通过直线到达的:A.B两点都 ...

  2. LOJ#6277. 数列分块入门 1

    分块思想,先把原来的序列分成根号n快,然后对于更新的部分,先操作这个序列边上的部分,然后再中间部分整块操作,这样复杂度就是O(根号N) #include<map> #include< ...

  3. Session&&cookie

    1.session存在于服务器而cookie存在于客户端: 2.持续时间均为20分钟: 3.session存放的是一个obgect类型,而cookie是string类型: 4.session赋值:Se ...

  4. tyvj/joyoi 1374 火车进出栈问题(水水版)

    我受不了了. Catalan数第100项,30000项,50000项,cnm 这tm哪里是在考数学,分明是在考高精度,FFT...... 有剧毒! 我只得写高精度,只能过100的那个题,两个进化版超时 ...

  5. Linux命令模拟Http的get或post请求

    Http请求指的是客户端向服务器的请求消息,Http请求主要分为get或post两种,在Linux系统下可以用curl和wget命令来模拟Http的请求. get请求: 1.使用curl命令: cur ...

  6. WebClient请求接口,get和post方法

    1,get方式 string URI = "url"; //实例化 WebClient client = new WebClient(); // client.UseDefault ...

  7. JAVA概述 也许你会豁然开朗

    1.JDK:Java Development Kit,java的开发和运行环境,java的开发工具和jre. 2.JRE:Java Runtime Environment,java程序的运行环境,ja ...

  8. 基于tensorflow的MNIST手写数字识别(二)--入门篇

    http://www.jianshu.com/p/4195577585e6 基于tensorflow的MNIST手写字识别(一)--白话卷积神经网络模型 基于tensorflow的MNIST手写数字识 ...

  9. /bin/bash^M:损坏的解释器: 没有那个文件或目录

    由于在Windows下换行是\n\r,在Linux下打开多了\r,所以需要删除.删除命令 :sed -i 's/\r$//' filename -i插入 s替代模式 \r$表示任何以\r结束的字符 整 ...

  10. 生产环境Linux常用命令【随时更新】

    1. 查询文件中的关键字并高亮显示[查询当前目录关键字为elasticsearch的日志文件] find ./ -name "my-elasticsearch.log" | xar ...