第一:order by 字段建Index ,第二:在没有必要的时候最好不要用order by 特别不要order by DESC 因为Order by 是一条条记录比较的,
没有必要的时候最好不要用order by
select a.OperDep,b.depname,a.sortid,(case when a.sortid=2 then '西药费' when a.sortid=3 then '中药费' else '草药费' end),sum(a.totalmoney),feetime,a.docid,c.opername from inhosfees a,dep_table b,opertable c where a.OperDep=b.depid and a.sortid in (2,3,4) and a.Docid=c.operid group by a.OperDep,b.depname,a.sortid,a.docid,c.opername 想选feetime又不group by feetime怎么办
select a.OperDep,b.depname,a.sortid,(case when a.sortid=2 then '西药费' when a.sortid=3 then '中药费' else '草药费' end),sum(a.totalmoney),convert(char(10),feetime,20),a.docid,c.opername from inhosfees a,dep_table b,opertable c where a.OperDep=b.depid and a.sortid in (2,3,4) and a.Docid=c.operid group by a.OperDep,b.depname,a.sortid,a.docid,c.opername,convert(char(10),feetime,20)
將表结构
depid depname itemid itemname totalmoney reportdate docid docname
部门id 部门名称 项目id 项目名称 收入 日期 医生id 医生姓名分成四個表表1:
depid depname
部门id 部门名称
表2:
itemid itemname
项目id 项目名称
表3:
docid docname
医生id 医生姓名
表4:
depid itemid totalmoney reportdate docid
部门id 项目id 收入 日期 医生id
查詢時再關聯四個表就行了
哪位大侠能帮我把结果写到一句sql里吗?
else '草药费' end),sum(a.totalmoney),feetime,a.docid,c.opername
from inhosfees a,dep_table b,opertable c
where a.OperDep=b.depid and a.sortid in (2,3,4) and a.Docid=c.operid
group by a.OperDep,b.depname,a.sortid,a.docid,c.opername
想选feetime又不group by feetime怎么办
else '草药费' end),sum(a.totalmoney),convert(char(10),feetime,20),a.docid,c.opername
from inhosfees a,dep_table b,opertable c
where a.OperDep=b.depid and a.sortid in (2,3,4) and a.Docid=c.operid
group by a.OperDep,b.depname,a.sortid,a.docid,c.opername,convert(char(10),feetime,20)