为什么用不到索引

LLJ_LILONGJIAN 2017-10-16 09:45:41
以下SQL的E_T_FEEFLY表与K_T_TASK 表均有TASK_ID索引,为什么用不到索引?

SELECT * FROM
(SELECT
TASK_ID
FROM E_T_FEEFLY
GROUP BY TASK_ID) A, K_T_TASK K
WHERE A.TASK_ID = K.TASK_ID;
...全文
280 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
jdsnhan 2017-10-17
  • 打赏
  • 举报
回复
SELECT TASK_ID FROM E_T_FEEFLY GROUP BY TASK_ID 这句话的意义何在呢?
wandier 2017-10-16
  • 打赏
  • 举报
回复
你这个是批量任务吧?不是单个查询
minsic78 2017-10-16
  • 打赏
  • 举报
回复
为什么一定要用索引?
「已注销」 2017-10-16
  • 打赏
  • 举报
回复
因为你这个是全表数据查询,这个肯定是全表扫描的
AHUA1001 2017-10-16
  • 打赏
  • 举报
回复
WITH A AS (SELECT TASK_ID FROM E_T_FEEFLY GROUP BY TASK_ID) SELECT A.*,K.* FROM K_T_TASK JOIN A ON A.TASK_ID = K.TASK_ID;.
minsic78 2017-10-16
  • 打赏
  • 举报
回复
引用 4 楼 LLJ_LILONGJIAN 的回复:
[quote=引用 1 楼 minsic78 的回复:] 为什么一定要用索引?
不用不是查询很慢[/quote]
引用 4 楼 LLJ_LILONGJIAN 的回复:
[quote=引用 1 楼 minsic78 的回复:] 为什么一定要用索引?
不用不是查询很慢[/quote] 如果查询一定要用索引的话,那么Oracle一定会给你自动建好索引并且用提示等各种方式让你的查询走索引的,还要全表扫描这种路径干嘛呢?
LLJ_LILONGJIAN 2017-10-16
  • 打赏
  • 举报
回复
引用 1 楼 minsic78 的回复:
为什么一定要用索引?
不用不是查询很慢

17,090

社区成员

发帖
与我相关
我的任务
社区描述
Oracle开发相关技术讨论
社区管理员
  • 开发
  • Lucifer三思而后行
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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