标题: 做了一个非常简单的联合查询。。但有点问题 [打印本页] 作者: deathhana 时间: 2009-9-1 10:26 标题: 做了一个非常简单的联合查询。。但有点问题 SELECT 已体检客户表.机构名称 AS 表达式1, Count("核保编号") AS 总和
FROM 已体检客户表
WHERE (((已体检客户表.报告完成日期) Is Not Null))
GROUP BY 已体检客户表.机构名称;
如:
机构名称 总合
123 4
这个可以实现以机构为单位,列出在机构进行体检 并 报告完成日期为 NOT NULL的总和但是我想把 报告完成日期IS NULL 的综合也列出来
我这么做
SELECT 已体检客户表.机构名称 AS 表达式1, Count("核保编号") AS 总和
FROM 已体检客户表
WHERE (((已体检客户表.报告完成日期) Is Not Null))
GROUP BY 已体检客户表.机构名称
UNION
SELECT 已体检客户表.机构名称 AS 表达式1, Count("核保编号") AS 总和
FROM 已体检客户表
WHERE (((已体检客户表.报告完成日期) Is Not Null))
GROUP BY 已体检客户表.机构名称;
这样的话会别报告完成日期为NULL的综合列在下方
机构名称 总合
123 4
123 5
我想把它列在NOT NULL值的后面 在同行
如
机构名称 总合1 总和2
123 4 5
不知道如何操作。。。请大家指点作者: djt 时间: 2009-9-1 10:43
好多方法
transform sum(总和)
select 表达式1
from (
SELECT 已体检客户表.机构名称 AS 表达式1, '完成‘ as Wancheng,Count("核保编号") AS 总和
FROM 已体检客户表
WHERE (((已体检客户表.报告完成日期) Is Not Null))
GROUP BY 已体检客户表.机构名称
UNION
SELECT 已体检客户表.机构名称 AS 表达式1, '未完',Count("核保编号") AS 总和
FROM 已体检客户表
WHERE (((已体检客户表.报告完成日期) Is Not Null))
GROUP BY 已体检客户表.机构名称
)
group by 表达式1
pivot wangcheng作者: deathhana 时间: 2009-9-1 10:53
非常感谢 我来消化下。。。在这个论坛学到了很多 我消化下线作者: deathhana 时间: 2009-9-1 11:02
transform sum(总和)
select 表达式1
from (
这个开头怎么解释的。、、、?作者: djt 时间: 2009-9-1 11:03
行列转置
把行放到列显示作者: lanshai 时间: 2009-9-1 13:32
oooooooooooooo作者: deathhana 时间: 2009-9-1 16:17
尴尬。。。。出问题了。。。反复试验。。弄出了诸多奇怪的表格。。
有 transform 的例子么。。。?作者: deathhana 时间: 2009-9-1 16:37
SELECT 已体检客户表.机构名称 AS 表达式1, '完成‘ as Wancheng,Count("核保编号") AS 总和