Я использую knex для запроса моего бэкэнда
knex('project AS p')
.select('p.name as projectName')
.where('p.name', 'abc')
Если я использую p.name = 'abc'
, тогда код работает
Однако я получаю ошибку при использовании:
.where(projectName, 'abc')
.where(p.name, 'abc')
.where({projectName: abc})
Я хочу использовать псевдоним, чтобы запрашивать не имя p.name, потому что, когда клиент отправляет запрос, он отправляет? ProjectName = 'abc', а не 'p.name' = 'abc'. Вы знаете, как это сделать
Пример
SELECT
cp.id AS cId,
(CASE WHEN cp.id = 7 THEN 'abc' ELSE 'NOT abc' END) AS abc
FROM customer_project AS cp
;
Как я запрашиваю, как это
SELECT
cp.id AS cId,
(CASE WHEN cp.id = 7 THEN 'abc' ELSE 'NOT abc' END) AS abc
FROM customer_project AS cp
WHERE abc = 'abc'
;
Столбец с ошибкой abc не выходит. Но я действительно хочу сделать запрос к столбцу abc (хотя он не выходит из схемы, но я его создаю)