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

---------------------------(end of broadcast)---------------------------
TIP 2: Don't 'kill -9' the postmaster

Reply via email to