How do I get this query to not pick up timestamps with the default DatePercentUpdate = 0000-00-00 00:00:00? I thought I had it by using 0, but it captures the 0000-00-00 00:00:00's.
$stmtSummary = $mysqliSummary
->prepare("SELECT n.nodeID, n.percentRedYellow, n.count, c.Loopback_ip, c.city
FROM CATV.CableData c
INNER JOIN CATV.node n ON n.nodeID = c.Node_ID
INNER JOIN CATV.CM cm ON cm.LoopbackIP=c.Loopback_ip
WHERE c.LocationID IS NOT NULL
AND c.Status_Update_Time <= NOW()
AND c.Status_Update_Time >=(NOW() - INTERVAL 2 DAY)
AND c.Status_Update_Time>0
AND n.DatePercentUpdate <= NOW()
AND n.DatePercentUpdate >=(NOW() - INTERVAL 2 DAY)
AND n.DatePercentUpdate>0
AND length(c.Node_ID)>0
Group BY c.city, n.nodeID");
Added: I tried searching online to use 0000-00-00 00:00:00 in the query, but didn't find anything with that in a filter.
You can simply use the >
(greater than) comparison operator or the !=
(doesn't equal) comparison operator like so
WHERE `date_field` != '0000-00-00 00:00:00'
The example will get all rows where your date doesn't equal that value.
Capture Query where timestamp is 0000-00-00 00:00:00
To select rows
select * from table_name where your_column = 0;
To update rows
UPDATE table_name SET column_name = new_value where your_column = 0;
This will fix
mysql incorrect datetime value: '0000-00-00 00:00:00'
mysql error
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.