sql server 2005多表连接查询,去除部分列不查询

withpas(selectpp.*,s.sectionidfromtb_patientpp,tb_section_flagswherepp.patientid=s.pa... with p as( select pp.*,s.sectionid from tb_patient pp,tb_section_flag s where pp.patientid=s.patientid and Status='I' and siteid not in('SI0000000554485','SI0000003221423','SIHCSLCS5E945TZ', 'SIHE7UJ13VVXNO0','SIHE9JS19E2GQEW') ) select *,ROW_NUMBER() over(order by p.PatientId) AS RowNumber from p left join SSGO31S90AHTPRK on (p.patientid = SSGO31S90AHTPRK.patientid) left join SSGO31SD34H73T3 on p.patientid =SSGO31SD34H73T3.patientid where sectionid = 'SEGO31QECEHQMRZ'
结果:

因为三表连接,写的存储过程,用String 格式拼接的sql语句。所以我想有没有什么办法,在表连接查询的时候不查询子表中的 PatientId 列。(除了将需要查询的列写出来这种笨办法之外)。
展开
 我来答
gaopengnmg
推荐于2016-05-28 · TA获得超过1421个赞
知道答主
回答量:160
采纳率:50%
帮助的人:94.5万
展开全部
select ,,, from
(select ,,, from 表1 where ) A
innor jion
(select ,,, from 表2 where ) B
on
where A.XXX=B.XXX

INNER JOIN 连接三个数据表的用法:
SELECT ,,, FROM (A INNER JOIN B ON A.字段号=B.字段号) C INNER JOIN D ON C.字段号=D.字段号
这里的大写字母都表示一个查询语句

以连表查询的结果,当做查询的内容 希望对你有帮助
更多追问追答
追问
我这个只能做左连接   交叉连接数据肯定是错误的
追答
你密密麻麻写一堆,没看太懂
chen_hongyang
2014-07-21 · TA获得超过5447个赞
知道大有可为答主
回答量:2790
采纳率:91%
帮助的人:864万
展开全部
你需要怎么做,看不懂要求啊
追问
三表左连接,三张表都有同一个主键“Patientid”  我要在三表左连接的时候  查出的结果中只显示 1个 Patientid 列。
但是不能使用 select patientid,column1,column2,column3 from table 的这种方法
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式