求教一个SQL问题,请高手们回答

xiwanghope 2004-07-23 04:28:56
有这么三个表,a,b,c

其中a的lb字段取自b的bID,b中的xh字段取自C的cid

那么我想用一个语句取出最近入库的资料,以及列出a.name,b.name,c.name

如果语句这么写
select * from a left join (select * from b left join c on b.xh = c.cid) as d on a.lb = d.bid


这么写有问题吗?
如果没有问题,那么这么写在数据量相对比较大的情况下,执行效率会高嘛?
一直弄不清楚连接查询和嵌套查询的效率是否可靠。。
请用到过的朋友给个提示。。
谢谢了~~
50分送上。。
...全文
82 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
xiwanghope 2004-07-23
  • 打赏
  • 举报
回复
谢谢~~结
skyboy0720 2004-07-23
  • 打赏
  • 举报
回复
实现这样的查询,无非就是连表和子查询,在SQL宝典上,曾经看到说,子查询的效率好象有高些,但测试的数据是上千万,2万条记录,我想没什么区别!!
xiwanghope 2004-07-23
  • 打赏
  • 举报
回复
:)谢谢。。那不知道这样写假设2万以上数据量是,效率如何??
chang1216 2004-07-23
  • 打赏
  • 举报
回复
select * from a where lb=(select bid from b where bid=(select cid from c)
skyboy0720 2004-07-23
  • 打赏
  • 举报
回复
楼主什么数据库?如果是SQL,我的方法可以啊!
xiwanghope 2004-07-23
  • 打赏
  • 举报
回复
a结构
aid
aname
bid

b结构
bid
bname
cid

c结构
cid
cname

现在根据需要列出来aname,bname,cname

sinusoid 2004-07-23
  • 打赏
  • 举报
回复
select a.name,b.name,c.name
from a,b,c
where a.lb=b.bID and b.xh=c.cid
skyboy0720 2004-07-23
  • 打赏
  • 举报
回复
不太明白你的意思,楼主不妨列些数据出来,然后根据数据再来分析!
xiwanghope 2004-07-23
  • 打赏
  • 举报
回复
在下愚笨,能这样连接嘛?

a join b
b join c?
skyboy0720 2004-07-23
  • 打赏
  • 举报
回复
select a.name,b.name.c.name from a join b on a.lb=b.bID join c on b.xh=c.cid

28,391

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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