我正在使用PDO
的{{1}}连接,我想对我用来检查数据库中是否存在mysql
的查询有一些看法,并且如果不是,请添加它。
tags
我不熟悉数据库,所以我不确定查询是否投影得很好
答案 0 :(得分:1)
我会稍微调整您的选择查询,以进行优化:
SELECT 1 AS found FROM tags WHERE tag_name = :tag_name LIMIT 1
SELECT *将更多数据(匹配记录中的所有字段)从数据库传输到您的应用程序。只选择你需要的字段会更有效率,在这种情况下看起来你只是检查存在,所以你不需要任何记录数据,因此SELECT 1。
LIMIT 1将查询结果限制为一条记录,而不是所有匹配的记录。更快的查询执行和更少的数据传输。
答案 1 :(得分:0)
一些更脏的MySQL特定选项包括简单地使用REPLACE INTO(不)或IGNORE关键字与INSERT(建议)结合使用。 INSERT IGNORE语法比单独执行SELECT稍快一些。