Confronto Timestamp & Date in MySQL - Errore ambiguo
-
14-09-2020 - |
Domanda
Questo è un seguito per una domanda che ho avuto aiuto con qui ieri, ma è un problema leggermente diverso - sto cercando di verificare se un timestamp mysql di un record DB corrisponde a 7 giorni in passato (ignorando ore esecondi ecc.), Ma sto ottenendo una "colonna 'import_date' in dove la clausola è ambigua", qualcuno può vedere il problema?
Questo è il confronto della data: Timestamp, E.G 2010-07-13 11:04:27
WHERE date_format( `import_date`, "%Y-%m-%d" ) =
date_format( date_sub( now(), INTERVAL 11 DAY ), "%Y-%m-%d" )
. Soluzione
Per quanto riguarda il tuo errore ambiguo è necessario disporre di 2 tabelle nella query sia con una colonna import_date
.Dovresti usare
WHERE date_format( `YourTableName`.`import_date`, "%Y-%m-%d" ) =
date_format( date_sub( now(), INTERVAL 11 DAY ), "%Y-%m-%d" )
.
Solo per aggiungere che la tua query sopra sarà inefficiente in quanto non è Sargeable
WHERE `YourTableName`.`import_date` = x
.
WHERE `YourTableName`.`import_date` between x and y
.
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow