Я использую PostgreSQL 9.5.3, и я пытаюсь выбрать всех пользователей, которым исполнилось более двадцати. Я построил SQLFiddle, который показывает ошибку:Столбец X не существует. (Создан столбцом по функциям)
http://sqlfiddle.com/#!15/5cd52/3
SNIPPET:
Схема:
CREATE TABLE users (
name text,
birthdate bigint
);
INSERT INTO users values('Chris', 774532800000);
SQL:
SELECT u.*, age(TO_TIMESTAMP(u.birthdate/1000)) as age from users u
WHERE age > 20
ОШИБКА:
ERROR: column "age" does not exist Position: 77
Причина, по которой я разделяющая на 1000, потому что мои даты все хранятся с использованием milliseconds
, как это по умолчанию, Firebase. Эта база данных postgreSQL используется для обработки более сложных запросов, которые Firebase не смог.
Является ли это Postgresql или MySQL? –
Я предполагаю, что псевдоним для столбца не может использоваться в условии where, потому что этот столбец не будет оцениваться во время фильтрации. – user4658312