Как преобразовать запрос SQLite в запрос Room (AndroidStudio) - PullRequest
0 голосов
/ 09 ноября 2019

У меня есть SQL-запрос, который работает с «Браузером БД для SQLite», и теперь я хотел реализовать этот запрос в своем проекте AndroidStudio с использованием Room.

Запрос выглядит так:

SELECT column1, tab1.column2, ... FROM

            (SELECT column1, column2, ... FROM table1) AS tab1  

            LEFT JOIN  

            (SELECT column2, ... FROM table1 NATURAL JOIN table2 NATURAL JOIN table3  
                GROUP BY column2) AS tab2  // <<< THIS LINE >>>

            ON tab1.column2 = tab2.column2  

            ORDER BY column1 ASC, tab1.column2 ASC;

Теперь я получаю сообщение об ошибке и не знаю, почему. Я пометил строку в коде <<< THIS LINE >>>", и в этой строке есть оператор AS. Для этого AS AndroidStudio выдает мне следующую ошибку:

error: extraneous input 'AS' expecting {<EOF>, ';', K_ALTER, K_ANALYZE, ...

Может кто-нибудь помочь мне встать на правильный путь? Что мне здесь не хватает? Я думал, что оператор AS не должен быть проблемой для Room.

1 Ответ

0 голосов
/ 09 ноября 2019

У меня действительно была очень простая ошибка, которую я не замечал в течение нескольких часов. На тот случай, если кто-то другой получит такое же сообщение об ошибке, как и я: моя ошибка заключалась в закрывающую скобку в неправильном месте. Поэтому, если вы также столкнулись с этой проблемой, проверьте весь ваш запрос на наличие простых ошибок, таких как пропущенная скобка или пропущенное место перед оператором ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...