繁体   English   中英

添加另一个条件程序

[英]adding another condition procedure

这是我的程序..

如何添加另一个条件,该条件应满足driver_latlong表中的updated_time记录应小于1分钟?

这是我的程序

BEGIN
SET @sql = CONCAT(
    'SELECT (DriverLocation.updated_at - NOW()) as Diff, DriverLocation.updated_at,  NOW(), DriverLocation.AutoId, DriverLocation.DriverId,  
    @dist:= ( 6371 * acos( cos( radians(',lat,') ) * cos( radians( DriverLocation.Lat ) ) * cos( radians( DriverLocation.Long ) - radians(',lng,') ) + sin( radians(',lat,') ) * sin( radians( DriverLocation.Lat ) ) ) ) AS distance 
    FROM driver_latlong DriverLocation LEFT JOIN driver_details DriverDetail on DriverDetail.DriverId = DriverLocation.DriverId where DriverLocation.DriverId NOT IN (',Exclude,') AND DriverDetail.IsActive=',1,' AND DriverDetail.IsOnline=',1,'   having distance <=50000.0 ORDER BY distance ASC LIMIT 0 , 1;');
PREPARE stmt FROM @sql;
EXECUTE stmt;
DEALLOCATE PREPARE stmt;
END

如果您只是引用MySQL获取的时间即, NOW()

您将获得差异介于0到60秒之间的记录(1分钟)

然后,您应该将此添加到您的过程中

AND (DriverLocation.updated_at - NOW() BETWEEN  0 AND 60 )

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM