Так что я знаю достаточно SQL просто для того, чтобы быть действительно опасным (я обычно не работаю с бэкэндом), но не могу успешно создать следующее представление;) Набор результатов, который мне нужен, - это набор данных, который имеетстроки, назначенные в качестве псевдонима столбца из нескольких таблиц (вместо 1xN плоских всех столбцов).При просмотре главной таблицы существует отношение многие-к-одному, основанное на внешних ключах, связанных с идентификатором строки соответствующей связанной таблицы.
В идеале мне бы хотелось, чтобы набор данных, который выглядит следующим образом, ввозврат:
dataset.transaction_row[n]: col1, col2, col3, coln... (columns from the transaction table)
dataset.category_row[n]: col1, co2, col3, coln... (columns from the category table)
и так далее ...
Я получаю следующую ошибку:
Query Error: near "AS": syntax error Unable to execute statement
От:
CREATE VIEW view_unreconciled_transactions
AS SELECT account_transaction.* AS transaction_row,
category.* AS category_row,
memorized.name_rule_replace OR account_transaction.name AS payee
FROM account_transaction
LEFT JOIN memorized ON account_transaction.memorized_key = memorized.id
LEFT JOIN category ON account_transaction.category_key = category.id
WHERE status != 2
ORDER BY account_transaction.dt_posted DESC
Это кажется достаточно простым, поскольку селектор столбца результата является повторяемым, который включает выражения (ссылающиеся на синтаксические диаграммы sqlite).Что касается ошибки, я предполагаю, что она жалуется на второй «AS», где я пытаюсь получить таблицу. *, Назначенную в качестве псевдонима.Любая помощь в правильном направлении приветствуется.Если бы мне пришлось, я бы мог явно указать все столбцы, но это похоже на помойку.