ORACLE怎样查询一个字段,但是这个字段同时满足另外两个字段的取值条件,并且as别名

qq_38601706 2018-08-02 11:51:38
SELECT
'' AS HC_NO,
CASE WHEN (('444' IN (SELECT A.template_code FROM mcs_doc_form_records WHERE template_code='444'))
AND ('00002' IN (SELECT A.node_code FROM mcs_doc_form_records WHERE node_code='00002'))
)THEN (SELECT A.STRING_VALUE from mcs_doc_form_records A)
END AS INHOSP_INDEX_NO,--住院号

CASE WHEN (('444' IN (SELECT A.template_code FROM mcs_doc_form_records WHERE template_code='444'))
AND ('00001'IN (SELECT A.node_code FROM mcs_doc_form_records WHERE node_code='00001'))
)THEN (SELECT A.STRING_VALUE from mcs_doc_form_records A)
END AS PAT_NAME --患者姓名

FROM mcs_doc_form_records A

请教各位大神,我想通过case的方式从数据库中一个表里检索出多个字段,其中两个字段的取值,需要另外两个字段取固定值才能获取想要的数据,并且最后AS成别名,我试着写了一条sql能顺利运行,但是结果字段都是空值,是不是不能用case when then 这种语句?
...全文
1480 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
jdsnhan 2018-08-03
  • 打赏
  • 举报
回复
看不清你的图,从sql上看,case when的部分,改成
SELECT A.STRING_VALUE from mcs_doc_form_records A where node_code = '00002' and template_code = '444'
不行吗
卖水果的net 2018-08-02
  • 打赏
  • 举报
回复
给出测试数据,和你的预期结果,用 excel 画一下。
qq_38601706 2018-08-02
  • 打赏
  • 举报
回复

我就是想根据 node_code和template_code,查String_Value这个字段下面的第二行和姓名这两条信息

17,377

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 基础和管理
社区管理员
  • 基础和管理社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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