如果仅提供一个值,以下sql语句是否等效(例如,在性能方面)?

SELECT * FROM mytable where lastname IN(:lastnames);
SELECT * FROM mytable where lastname = :lastname;


背景:我有应该为列表提供服务的服务,以及为单个结果提供服务的服务。现在,我想一下,如果我仅用一个查询就可以实现相同的目的,那么为什么要创建两个数据库查询端点(意味着:也可以使用IN子句查询单个结果)。

最佳答案

我在一个具有数百条记录的小表上的mariaDB数据库上尝试了它,使用IN的查询比第一个慢(这是可以预期的),但是我们谈论的是0.02秒的差异

10-07 12:30
查看更多