SELECT bianh = (CASE WHEN sb.bianh IS NULL THEN nnd.bianh ELSE sb.bianh END),
zhuzhy = (CASE WHEN sb.zhuzhy IS NULL THEN 0 ELSE sb.zhuzhy END),
zhuanj = (CASE WHEN sb.zhuanj IS NULL THEN 0 ELSE sb.zhuanj END),
jiaosh = (CASE WHEN sb.jiaosh IS NULL THEN 0 ELSE sb.jiaosh END),
zhuyy = (CASE WHEN sb.zhuyy IS NULL THEN 0 ELSE sb.zhuyy END),
zhuzhy = (CASE WHEN nnd.zhuzhy IS NULL THEN 0 ELSE nnd.zhuzhy END),
fujsh = (CASE WHEN nnd.fujsh IS NULL THEN 0 ELSE nnd.fujsh END)
FROM (SELECT bianh = (CASE WHEN wy.bianh IS NULL
THEN liuhm.bianh ELSE wy.bianh END),
zhuzhy = (CASE WHEN wy.zhuzhy IS NULL THEN 0 ELSE wy.zhuzhy END),
zhuanj = (CASE WHEN wy.zhuanj IS NULL THEN 0 ELSE wy.zhuanj END),
jiaosh = (CASE WHEN liuhm.jiaosh IS NULL THEN 0 ELSE liuhm.jiaosh END),
zhuyy = (CASE WHEN liuhm.zhuyy IS NULL THEN 0 ELSE liuhm.zhuyy END)
FROM (SELECT bianh = (CASE WHEN zhuzhy.bianh IS NULL
THEN zhuanj.bianh ELSE zhuzhy.bianh END),
zhuzhy = (CASE WHEN zhuzhy.renc IS NULL
THEN 0 ELSE zhuzhy.renc END),
zhuanj = (CASE WHEN zhuanj.renc IS NULL
THEN 0 ELSE zhuanj.renc END)
FROM (SELECT bianh, yszc, COUNT(*) AS renc
FROM mzghb
WHERE yszc = '主治医' AND len(ysgh) = 4
GROUP BY bianh, yszc) zhuzhy FULL OUTER JOIN
(SELECT bianh, yszc, COUNT(*) AS renc
FROM mzghb
WHERE yszc = '专家' AND len(ysgh) = 4
GROUP BY bianh, yszc) zhuanj ON zhuzhy.bianh = zhuanj.bianh)
wy FULL OUTER JOIN
(SELECT bianh = (CASE WHEN jiaosh.bianh IS NULL
THEN zhuyy.bianh ELSE jiaosh.bianh END),
jiaosh = (CASE WHEN jiaosh.renc IS NULL
THEN 0 ELSE jiaosh.renc END),
zhuyy = (CASE WHEN zhuyy.renc IS NULL
THEN 0 ELSE zhuyy.renc END)
FROM (SELECT bianh, yszc, COUNT(*) AS renc
FROM mzghb
WHERE yszc = '正教授' AND len(ysgh) = 4
GROUP BY bianh, yszc) jiaosh FULL OUTER JOIN
(SELECT bianh, yszc, COUNT(*) AS renc
FROM mzghb
WHERE yszc = '住院医' AND len(ysgh) = 4
GROUP BY bianh, yszc) zhuyy ON jiaosh.bianh = zhuyy.bianh)
liuhm ON wy.bianh = liuhm.bianh) sb FULL OUTER JOIN
(SELECT bianh = (CASE WHEN yanjsh.bianh IS NULL
THEN fujsh.bianh ELSE yanjsh.bianh END),
zhuzhy = (CASE WHEN yanjsh.renc IS NULL
THEN 0 ELSE yanjsh.renc END), fujsh = (CASE WHEN fujsh.renc IS NULL
THEN 0 ELSE fujsh.renc END)
FROM (SELECT bianh, yszc, COUNT(*) AS renc
FROM mzghb
WHERE yszc = '住院医' AND len(ysgh) > 4
GROUP BY bianh, yszc) yanjsh FULL OUTER JOIN
(SELECT bianh, yszc, COUNT(*) AS renc
FROM mzghb
WHERE yszc = '副教授' AND len(ysgh) = 4
GROUP BY bianh, yszc) fujsh ON yanjsh.bianh = fujsh.bianh) nnd ON
sb.bianh = nnd.bianh
ORDER BY bianh这只是一条查询,查出后还有一个类似的查询,
然后这两个查询再完全联接!
唉~~~~~~~~累死我了,不知怎么办好,SQL2000环境
或用其他的什么办法可以取代他?
多谢!
zhuzhy = (CASE WHEN sb.zhuzhy IS NULL THEN 0 ELSE sb.zhuzhy END),
zhuanj = (CASE WHEN sb.zhuanj IS NULL THEN 0 ELSE sb.zhuanj END),
jiaosh = (CASE WHEN sb.jiaosh IS NULL THEN 0 ELSE sb.jiaosh END),
zhuyy = (CASE WHEN sb.zhuyy IS NULL THEN 0 ELSE sb.zhuyy END),
zhuzhy = (CASE WHEN nnd.zhuzhy IS NULL THEN 0 ELSE nnd.zhuzhy END),
fujsh = (CASE WHEN nnd.fujsh IS NULL THEN 0 ELSE nnd.fujsh END)
FROM (SELECT bianh = (CASE WHEN wy.bianh IS NULL
THEN liuhm.bianh ELSE wy.bianh END),
zhuzhy = (CASE WHEN wy.zhuzhy IS NULL THEN 0 ELSE wy.zhuzhy END),
zhuanj = (CASE WHEN wy.zhuanj IS NULL THEN 0 ELSE wy.zhuanj END),
jiaosh = (CASE WHEN liuhm.jiaosh IS NULL THEN 0 ELSE liuhm.jiaosh END),
zhuyy = (CASE WHEN liuhm.zhuyy IS NULL THEN 0 ELSE liuhm.zhuyy END)
FROM (SELECT bianh = (CASE WHEN zhuzhy.bianh IS NULL
THEN zhuanj.bianh ELSE zhuzhy.bianh END),
zhuzhy = (CASE WHEN zhuzhy.renc IS NULL
THEN 0 ELSE zhuzhy.renc END),
zhuanj = (CASE WHEN zhuanj.renc IS NULL
THEN 0 ELSE zhuanj.renc END)
FROM (SELECT bianh, yszc, COUNT(*) AS renc
FROM mzghb
WHERE yszc = '主治医' AND len(ysgh) = 4
GROUP BY bianh, yszc) zhuzhy FULL OUTER JOIN
(SELECT bianh, yszc, COUNT(*) AS renc
FROM mzghb
WHERE yszc = '专家' AND len(ysgh) = 4
GROUP BY bianh, yszc) zhuanj ON zhuzhy.bianh = zhuanj.bianh)
wy FULL OUTER JOIN
(SELECT bianh = (CASE WHEN jiaosh.bianh IS NULL
THEN zhuyy.bianh ELSE jiaosh.bianh END),
jiaosh = (CASE WHEN jiaosh.renc IS NULL
THEN 0 ELSE jiaosh.renc END),
zhuyy = (CASE WHEN zhuyy.renc IS NULL
THEN 0 ELSE zhuyy.renc END)
FROM (SELECT bianh, yszc, COUNT(*) AS renc
FROM mzghb
WHERE yszc = '正教授' AND len(ysgh) = 4
GROUP BY bianh, yszc) jiaosh FULL OUTER JOIN
(SELECT bianh, yszc, COUNT(*) AS renc
FROM mzghb
WHERE yszc = '住院医' AND len(ysgh) = 4
GROUP BY bianh, yszc) zhuyy ON jiaosh.bianh = zhuyy.bianh)
liuhm ON wy.bianh = liuhm.bianh) sb FULL OUTER JOIN
(SELECT bianh = (CASE WHEN yanjsh.bianh IS NULL
THEN fujsh.bianh ELSE yanjsh.bianh END),
zhuzhy = (CASE WHEN yanjsh.renc IS NULL
THEN 0 ELSE yanjsh.renc END), fujsh = (CASE WHEN fujsh.renc IS NULL
THEN 0 ELSE fujsh.renc END)
FROM (SELECT bianh, yszc, COUNT(*) AS renc
FROM mzghb
WHERE yszc = '住院医' AND len(ysgh) > 4
GROUP BY bianh, yszc) yanjsh FULL OUTER JOIN
(SELECT bianh, yszc, COUNT(*) AS renc
FROM mzghb
WHERE yszc = '副教授' AND len(ysgh) = 4
GROUP BY bianh, yszc) fujsh ON yanjsh.bianh = fujsh.bianh) nnd ON
sb.bianh = nnd.bianh
ORDER BY bianh这只是一条查询,查出后还有一个类似的查询,
然后这两个查询再完全联接!
唉~~~~~~~~累死我了,不知怎么办好,SQL2000环境
或用其他的什么办法可以取代他?
多谢!
解决方案 »
- 将D盘上的一个目录cst备份到H盘上,D盘上的cst目录中的文件是经常变化的,请问如何实现D:\cst和H:\cst这两个目录的自动定期同步备份
- 如何复制整列到另外的excel文件
- ※※ 代 码 注 释 器 ※※ 分享
- 高分求教:用Copymemory对数组影射时出错……
- MDI窗体背景
- print的问题~
- 如何判断是否点击了“关闭”按钮
- 求救:对象变量或With块变量未设置 怎么解决?????
- 请问各位大虾,有谁知道windows关于串口操作的API函数呢?
- 谁能给我DCOM???!!!(寻求VB60对Access数据库操作的用DCOM的编程示例代码)
- 如何将域用户添加至某个域用户组中,如何修改域用户密码?(倾力送分)
- pb,vb,delphi的详解
创建视图是不是用Create View 就可以?
可
什么意思啊。
up