Re: Join three tables and specify criteria... I know this should be easy!
| От | David G Johnston |
|---|---|
| Тема | Re: Join three tables and specify criteria... I know this should be easy! |
| Дата | |
| Msg-id | 1409358872050-5816992.post@n5.nabble.com обсуждение |
| Ответ на | Re: Join three tables and specify criteria... I know this should be easy! (Kevin Grittner <kgrittn@ymail.com>) |
| Список | pgsql-novice |
Kevin Grittner-5 wrote
> Paul Linehan <
> linehanp@
> > wrote:
>> I really want Sandor's id - that's all that really counts.
>
>>
>> Give me the ids of all who speak 'EN' and 'DE' (or
>> possibly 'EN', 'DE', 'NL' and 'FR') for example.
>
> WITH required_languages(iso_code) AS (VALUES ('EN'),('DE'))
> SELECT u.user_id, u.user_name
> FROM (
> SELECT ul.ul_user_id, count(*) cnt
> FROM required_languages r
> JOIN user_language ul on (ul.ul_iso_code = r.iso_code)
> GROUP BY ul.ul_user_id
> HAVING count(*) >= (SELECT count(*) FROM required_languages
> r2)
> ) x
> JOIN "user" u ON (u.user_id = x.ul_user_id);
The following is also generally useful:
iso_code = ALL(regexp_split_to_array(?::text,';'))
Where you can then pass in a string like:
'DE;EN'
Via your client library parameterized query capability (or psql variable)
David J.
--
View this message in context:
http://postgresql.1045698.n5.nabble.com/Join-three-tables-and-specify-criteria-I-know-this-should-be-easy-tp5816921p5816992.html
Sent from the PostgreSQL - novice mailing list archive at Nabble.com.
В списке pgsql-novice по дате отправления: