Фильтрация запросов по датам с использованием FMDB?

Как запросить игры после "видимой" даты? Формат даты установлен:

FMDatabase *db = self.database;
if([self.database open]){
    [db beginTransaction];

    NSDateFormatter *formatter = [NSDateFormatter new];
    [formatter setDateFormat:@"yyyy-dd-MM'T'HH:mm:ss'Z'"];
    [db setDateFormat:formatter];
    ...
}

Таблица создается следующим образом:

[db executeUpdate:@"CREATE TABLE IF NOT EXISTS game (gameId Varchar(36) NOT NULL PRIMARY KEY,name TEXT,visibleFrom TEXT)"];

Запрос выполняется следующим образом:

FMResultSet *results = [db executeQuery:@"SELECT * FROM game WHERE game.visibleFrom >= ?,[NSDate date]];

Это ничего не возвращает. Когда я использую select * from game, я получаю все игры. Но мне нужен отфильтрованный результат. Заранее спасибо.


person jacob    schedule 24.02.2014    source источник


Ответы (1)


Взгляните на синтаксис SQLite для запроса дат: sqlite select с условием по дате Вам может понадобиться что-то вроде '@ "... где date> date (?)", FormattedDate', где formattedDate форматируется как '1980-12-31'

person KrauseFx    schedule 24.02.2014