假设我在表格中有一个字段需要检查,并且字段中存储了值“on”。现在,哪些是值得推荐的?MySQL - 哪个更好:SELECT还是SELECT COUNT?
SELECT COUNT(*) AS c FROM table WHERE field='on'
if (c > 0) { //execute script }
或
SELECT field FROM table
if (field == 'on') { //execute script }
假设我在表格中有一个字段需要检查,并且字段中存储了值“on”。现在,哪些是值得推荐的?MySQL - 哪个更好:SELECT还是SELECT COUNT?
SELECT COUNT(*) AS c FROM table WHERE field='on'
if (c > 0) { //execute script }
或
SELECT field FROM table
if (field == 'on') { //execute script }
SELECT COUNT(*) AS c FROM table WHERE field='on'
if (c > 0) { //execute script }
第一个是速度更快,因为查询自己对记录进行计数并仅在where field ='on'条件下获取欲望记录。因此,执行这样的查询需要更少的时间,同时占用更少的内存。 其中一个最有用的好处是加速。
SELECT field FROM table
if (field == 'on') { //execute script }
第二动作使用大型数据库时,因为其获取从数据库中的所有记录,然后我们正在检查“开”条件申请==服用时间。
所以第一个比较好实施。
谢谢你的帮助。 – user3052587
最受欢迎。也总是为未来做好准备。 – RJParikh
第一个是好还是快速的方式
SELECT COUNT(*) AS c FROM table WHERE field='on'
因为if (c > 0)
超过快if (field == 'on')
不是'count(*)'比'count(field)'慢吗? – px5x2
为什么不:SELECT COUNT(*)FROM table WHERE field ='on'having COUNT(*)> 0 {//执行脚本} – John
这两个查询产生完全不同的输出,您想如何比较他们? – Shadow
我想比较哪个更快,并且会在恶劣的环境中做的更好。 – user3052587