Как преобразовать рабочий запрос в конфигурацию Eloquent Lumen - PullRequest
0 голосов
/ 13 июля 2020

Уважаемые,

У меня есть этот рабочий запрос для получения информации о токене и appid из двух таблиц pg sql. Я пытаюсь реализовать API с помощью фреймворка Lumen. Как преобразовать этот запрос в красноречивые утверждения? Таким образом, можно настроить раздел контроллера. Я пробовал это http://cryptic-peak-77605.herokuapp.com/, но безуспешно

SELECT token,appid FROM db.public.tokens WHERE id = (SELECT id FROM db.public.data WHERE (name,value) IN (('userName', '100'), ('domain', '1591.xpto.xyz' )) group by id having count(distinct VALUE) = 2);

1 Ответ

0 голосов
/ 15 июля 2020

Вы можете сделать что-то вроде этого.

$records = YourModel::where('id', DB::select("SELECT id FROM data WHERE (name,value) IN (('userName', '100'), ('domain', '1591.xpto.xyz' )) group by id having count(distinct VALUE) = 2"))->select(['token', 'appid'])->get();

Но, глядя на приведенный выше запрос, кажется, что было бы хорошим выбором, если бы мы выполнили полный необработанный запрос, например

$records = DB::select("SELECT token,appid FROM tokens WHERE id = (SELECT id FROM data WHERE (name,value) IN (('userName', '100'), ('domain', '1591.xpto.xyz' )) group by id having count(distinct VALUE) = 2);");
...