Axel Rau wrote:
>
> SELECT T2.T2_name, COUNT(T1.id) AS xx
> FROM T2, T1
> WHERE T2.id = T1.fk_t2
> GROUP BY T2.T2_name
> HAVING COUNT(T1.id) > 1
> ORDER BY xx DESC;
>
> t2_name | xx
> ---------+----
> T2-N2 | 3
> T2-N3 | 2
> (2 rows)
>
> Adding column t1_name to the result set breaks COUNT(T1.id):
>
> SELECT T2.T2_name, T1.T1_name, COUNT(T1.id) AS xx
> FROM T2, T1
> WHERE T2.id = T1.fk_t2
> GROUP BY T2.T2_name, T1.T1_name
> HAVING COUNT(T1.id) > 1
> ORDER BY xx DESC;
>
> t2_name | t1_name | xx
> ---------+---------+----
> (0 rows)
>
> How can I do this with pg ?
Do what? You don't say what results you are expecting.
Do you want:
1. ALL values of T1_name (in which case what count do you want)?
2. The FIRST value of T1_name (in which case what do you mean by first)?
-- Richard Huxton Archonet Ltd