一次面试遇到的问题(关于sql查询)

前几天参加一个面试,面试官出了这样一个题目,两个表,t1(id1,name1),t2(id2,name2),问题是:t2这张表有两条记录,t1这张表有20000条记录,问,查询出t1表的name1。条件是id1等于id2,并且name2等于给定的一个名字‘join’。写一个sql语句。
我直接就写出以下语句
select name1 from t1,t2 where id1=id2 and name2='join';
这个答案是错误的,因为它的执行效率太低了。
以下才是面试官想要的结果:
select name1 from t1 where id1 in (select id2 from t2 where name2='join');
看来,考虑效率和性能很重要啊,特别是做软件开发的。路漫漫其修远兮,吾将上下而求索
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值