Удалить записи определенной даты в sqlite? - PullRequest
3 голосов
/ 07 декабря 2010

У меня есть таблица со столбцом с именем timestamp

timestamp DATE DEFAULT (datetime('now','localtime'))

, который хранит записи в таблице следующим образом:

2010-12-06 18:41:37

Как я могу удалить записи определенной даты? Я использую:

DELETE FROM sessions WHERE timestamp = '2010-12-06';

но это не работает. я что-то здесь упускаю?

Большое спасибо заранее.

Ответы [ 2 ]

7 голосов
/ 07 декабря 2010
DELETE FROM sessions WHERE timestamp = '2010-12-06' 

в основном выбирает и удаляет все записи с отметкой времени '2010-12-06 00: 00: 00'

Вам лучше определить диапазон:

DELETE FROM sessions WHERE timestamp >= '2010-12-06' AND timestamp < '2010-12-07'

удалит все сеансы, попавшие в этот диапазон.

0 голосов
/ 12 марта 2018

Используйте функцию Date, чтобы извлечь и сравнить только дату:

DELETE FROM sessions WHERE DATE(timestamp) = '2010-12-06'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...