[英]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.