[Moscow.pm] DBIx::Class прошу помощи...

Sergey Malochinskiy sergey.malochinskiy на gmail.com
Пн Июл 16 06:51:30 PDT 2012


Спасибо огромное!

Такой запрос гораздо лучше, но я натолкнулся теперь на ограничение DBIx::Class
SELECT i.key,  iv.value FROM t1 i LEFT OUTER JOIN t2 iv ON (iv.key_id
= i.id AND iv.lang_id = 2) ORDER BY i.key

Средствами DBIx::Class нельзя передать в запрос AND iv.lang_id = 2 именно в ON
Рылся по спискам рассылки и нашел только один вариант создать
DBIx::Class::ResultSource::View т.е. вписать запрос руками в вьюху...
не очень нравится такое решение.

Но может кому и пригодится...


16 июля 2012 г., 15:59 пользователь Akzhan Abdulin
<akzhan.abdulin на gmail.com> написал:
>
> SELECT i.key,  iv.value FROM t1 i LEFT OUTER JOIN t2 iv ON (iv.key_id = i.id AND iv.lang_id = 2) ORDER BY i.key
>
> 16 июля 2012 г., 15:53 пользователь Sergey Malochinskiy <sergey.malochinskiy на gmail.com> написал:
>>
>> Здравствуйте.
>>
>> Помогите пожалуйста постичь эту "странную" порой вещь.
>>
>> Есть две таблички в MySQL, созданные и заполненные (см. data.sql во вложении).
>>
>> Написал вот такой запрос для вытаскивания данных:
>> SELECT i.key, (SELECT iv.value FROM t2 iv WHERE  iv.key_id = i.id AND iv.lang_id = 2) as value
>> FROM t1 i
>> ORDER BY i.key
>>
>> Т.е. нужно вывести значения поля key из t1, даже если нет value в t2.
>> key;value
>> btn_signin;NULL
>> caption_signin;NULL
>> label_username_signin;NULL
>> message1_signin;NULL
>> url_feedback;NULL
>> url_help;Help
>> url_recovery;NULL
>> url_signin;NULL
>> url_signout;NULL
>> url_signup;NULL
>> url_signup_long;NULL
>>
>> Как теперь такой запрос выполнить через DBIx::Class ?
>> Или может как-то преобразовать структуру таблиц... или запрос другой?!
>>
>> Помогите пожалуйста.
>>
>> --
>> Best regards,
>> Sergey Malochinskiy
>> --
>> Moscow.pm mailing list
>> moscow-pm на pm.org | http://moscow.pm.org
>>
>
>
> --
> Moscow.pm mailing list
> moscow-pm на pm.org | http://moscow.pm.org
>



--
Best regards,
Sergey Malochinskiy


Подробная информация о списке рассылки Moscow-pm