可以简化子查询吗

select * from keywords where name=(select name from keywords where site_id=1 and u_id=40 and is_token=1 limit 0,1) and site_id=1 and u_id=40 and is_token=1

mysql中,有人知道这个查询可以简化吗? 查询花费 0.1905 秒,如何优化。

阅读 2.1k
2 个回答

和下面这个应该没区别:

select * from keywords where site_id=1 and u_id=40 and is_token=1 limit 1 

数据量不多情况下,一次性全取出来,程序过滤name条件

SELECT * 
FROM `keywords` 
WHERE `site_id`=1 
    AND `u_id`=40 
    AND `is_token`=1;
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题