sql查询难题:如何将某列值作为查询内容?

QuinsonYue 2007-06-29 02:37:23
SELECT xt_zlb.dh, xt_ddb.fwz, test.c
FROM xt_zlb INNER JOIN
xt_ddb ON xt_zlb.ddid = xt_ddb.ddid INNER JOIN
xt_qyb ON xt_ddb.qyid = xt_qyb.qyid CROSS JOIN
test
-------------的结果如下:--------------------------------
dh fwz c
旧体委楼12栋 红旗中服务站 xt_ddb.sx, xt_qyb.qym
大园北2栋 红旗中服务站 xt_qyb.qym
大园南3栋 红旗中服务站 xt_ddb.sx, xt_qyb.qym

---------------------------------------------------------
每行c列的值都不同
我是想实现相对每一行test.c储存的内容作为查询内容
---------------------------------------------------------
即想得到如下的结果:
SELECT xt_zlb.dh, xt_ddb.fwz, xt_ddb.sx, xt_qyb.qym
FROM xt_zlb INNER JOIN
xt_ddb ON xt_zlb.ddid = xt_ddb.ddid INNER JOIN
xt_qyb ON xt_ddb.qyid = xt_qyb.qyid
请教,实现越简单越好。
...全文
310 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
QuinsonYue 2007-06-29
  • 打赏
  • 举报
回复
没人会吗?给到答案的到这两块做个回复。一并给分...........
http://community.csdn.net/Expert/topic/5627/5627718.xml?temp=.9041254
http://community.csdn.net/Expert/topic/5628/5628840.xml?temp=.5204889
QuinsonYue 2007-06-29
  • 打赏
  • 举报
回复
没人会吗?回答的到这两块做个回复。一并给分...........
http://community.csdn.net/Expert/topic/5627/5627718.xml?temp=.9041254
http://community.csdn.net/Expert/topic/5628/5628840.xml?temp=.5204889
jazzshi 2007-06-29
  • 打赏
  • 举报
回复
up
QuinsonYue 2007-06-29
  • 打赏
  • 举报
回复
没人吗?大家看上面这个例子就明白了
QuinsonYue 2007-06-29
  • 打赏
  • 举报
回复
举个简单的例子,比如table1有a、b、c三列
select * from table1
-------结果:-----------------------
a b c
table1.b 如此 很好
table1.c 这样 不错
------------------------------------

而我现在要得到这样的结果
-------结果:-----------------------
x b c
如此 //即该行table1.b的值 如此 很好
不错 //即该行table1.c的值 这样 不错
------------------------------------
QuinsonYue 2007-06-29
  • 打赏
  • 举报
回复
SELECT xt_zlb.dh, xt_ddb.fwz, test.c
FROM xt_zlb INNER JOIN
xt_ddb ON xt_zlb.ddid = xt_ddb.ddid INNER JOIN
xt_qyb ON xt_ddb.qyid = xt_qyb.qyid CROSS JOIN
test
就是把test.c这一列的值替换成查询结果的内容

比如的结果:--------------------------------
dh fwz c
旧体委楼12栋 红旗中服务站 xt_ddb.sx, xt_qyb.qym
大园北2栋 红旗中服务站 xt_qyb.qym
大园南3栋 红旗中服务站 xt_ddb.sx, xt_qyb.qym

相对第一、第三行则
SELECT xt_zlb.dh, xt_ddb.fwz, xt_ddb.sx, xt_qyb.qym
FROM xt_zlb INNER JOIN
xt_ddb ON xt_zlb.ddid = xt_ddb.ddid INNER JOIN
xt_qyb ON xt_ddb.qyid = xt_qyb.qyid CROSS JOIN
test
第二行则
SELECT xt_zlb.dh, xt_ddb.fwz, xt_qyb.qym
FROM xt_zlb INNER JOIN
xt_ddb ON xt_zlb.ddid = xt_ddb.ddid INNER JOIN
xt_qyb ON xt_ddb.qyid = xt_qyb.qyid CROSS JOIN
test
lishijie910123 2007-06-29
  • 打赏
  • 举报
回复
我觉得在存储过程中完成应该简单些吧
YUAN168 2007-06-29
  • 打赏
  • 举报
回复
加where 条件 啊

或是有分支结构的话用
if来做也可以啊,

你的意思还不太请楚
QuinsonYue 2007-06-29
  • 打赏
  • 举报
回复
修正一点:
---------------------------------------------------
即想得到如下的结果:
SELECT xt_zlb.dh, xt_ddb.fwz, xt_ddb.sx, xt_qyb.qym
FROM xt_zlb INNER JOIN
xt_ddb ON xt_zlb.ddid = xt_ddb.ddid INNER JOIN
xt_qyb ON xt_ddb.qyid = xt_qyb.qyid
请教,实现越简单越好。

//xt_ddb.sx, xt_qyb.qym是不定的,根据test.c的内容而定...

110,526

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

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