Как лучше всего вернуть текстовое поле в запросе для вычисляемого столбца? - PullRequest
0 голосов
/ 08 мая 2020

У меня есть база данных SQLite с таблицей участников. Столбцы в моей таблице: first_name, last_name, date_dues_paid. Мне нужно вернуть четвертый столбец с меткой active, который будет либо «true», либо «false» в зависимости от того, возраст date_dues_paid год или больше.

Я пробовал CAST(WHEN ) AS active и использовал DATEDIFF () и несколько других методов, но просто не могу понять это правильно. Позже я могу предоставить больше примеров и базы кода, разместив их на мобильном устройстве прямо сейчас.

1 Ответ

0 голосов
/ 08 мая 2020

Просто добавьте один год к date_dues_paid и сравните его с текущей датой следующим образом:

SELECT
    first_name,
    last_name,
    date_dues_paid,
    SELECT CASE WHEN DATE(date_dues_paid,'+1 year') > DATE('now') THEN 'TRUE' ELSE 'FALSE' END AS active
FROM members

Вместо строк TRUE / FALSE вы также можете использовать bool (1,0) в результате:

SELECT DATE(date_dues_paid,'+1 year') > DATE('now') AS active
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...