使用mysql查询是否更快:
SELECT CURDATE() as today或PHP语句:
$curdate = date('Y-m-d');同样的答案也适用于使用date()与MySQL的NOW()和CURTIME()吗?
发布于 2011-05-25 00:57:55
如果您只是简单地执行查询,以便将日期放入PHP脚本中,那么可以使用PHP函数。在这两种情况下,PHP和MySQL都会调用系统时钟,将时间值转换为格式化字符串并返回。MySQL版本将增加查询解析/编译的开销,以及从PHP->MySQL->PHP的往返。如果您通过TCP socket与MySQL通信,则会增加建立/发送/接收TCP连接和数据包的开销。
另一方面,如果要在查询中使用该数据值,最好将其保留在MySQL中。例如,随机地,您可能在午夜之前启动了一个脚本,这样PHP就会为其时间戳生成"May 24/201123:59:59.999“,但是查询直到"May 25/201100:00:00.001”才在MySQL中执行,所以现在日期不匹配。
发布于 2011-05-25 00:56:28
这真的要看情况。
将函数结果保存在原生环境中几乎总是更快。
如果要在php中使用日期,请使用php date()函数。
如果要在查询中使用日期,请使用MySQL NOW()函数。
如果php和MySQL运行在不同的机器上,肯定会尽可能长时间地将数据保存在每台机器中。网络上的往返将使所有其他考虑因素相形见绌。
争取最小的网络流量是一个很好的经验法则。
发布于 2011-05-25 00:54:34
如果是INSERT语句,最好使用mysql内置函数,但如果是SELECT语句,使用php函数'date();‘会更快。
https://stackoverflow.com/questions/6113920
复制相似问题