Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/svg/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
mysql中使用datediff()优化查询_Mysql_Optimization_Query Optimization_Database Administration - Fatal编程技术网

mysql中使用datediff()优化查询

mysql中使用datediff()优化查询,mysql,optimization,query-optimization,database-administration,Mysql,Optimization,Query Optimization,Database Administration,我有一个问题如下 select id,name,baseid,member_card_type,membercard_num,last_draw,counter from details_dest where datediff(curdate(),basedate)<100; 选择 id、姓名、基本id、会员卡类型、会员卡编号、最后一次提款、计数器 从细节到目的地 其中datediff(curdate(),basedate)我建议使用以下查询: select id,name,bas

我有一个问题如下

select 
id,name,baseid,member_card_type,membercard_num,last_draw,counter 
from details_dest
where datediff(curdate(),basedate)<100;
选择
id、姓名、基本id、会员卡类型、会员卡编号、最后一次提款、计数器
从细节到目的地

其中datediff(curdate(),basedate)我建议使用以下查询:

select 
id,name,baseid,member_card_type,membercard_num,last_draw,counter 
from details_dest
where basedate > (curdate() - INTERVAL 100 DAY);

我建议提出以下问题:

select 
id,name,baseid,member_card_type,membercard_num,last_draw,counter 
from details_dest
where basedate > (curdate() - INTERVAL 100 DAY);

感谢它工作得又好又快…..请告诉我为什么datadiff()函数很慢,还有其他函数像datediff()会降低性能…..我认为您的查询很慢的原因不是datediff,而是datediff的使用方式
datediff(curdate(),basedate)(curdate()-间隔100天)
::RHS计算一次,因为它是一个常量,并且由于basedate是一个索引列,所以只处理满足条件的行,因此速度更快。感谢它工作良好且快速…..请告诉我为什么datadiff()函数的速度很慢,还有其他任何函数,如datediff()会降低性能……我认为您的查询速度慢的原因不是datediff,而是datediff的使用方式
datediff(curdate(),basedate)(curdate()-间隔100天)
::RHS计算一次,因为它是一个常量,并且basedate是一个索引列,所以只处理满足条件的行,因此速度更快。