Tôi cố gắng để viết các truy vấn sau đây trên postgresql:Làm thế nào để thực hiện truy vấn con Postgresql trong mệnh đề chọn với tham gia vào từ mệnh đề như SQL Server?
select name, author_id, count(1),
(select count(1)
from names as n2
where n2.id = n1.id
and t2.author_id = t1.author_id
)
from names as n1
group by name, author_id
Điều này chắc chắn sẽ làm việc trên Microsoft SQL Server nhưng nó không phải ở tất cả trên postegresql. Tôi đọc tài liệu hướng dẫn của nó một chút và có vẻ như tôi có thể viết lại nó như:
select name, author_id, count(1), total
from names as n1, (select count(1) as total
from names as n2
where n2.id = n1.id
and n2.author_id = t1.author_id
) as total
group by name, author_id
Nhưng đó trả về lỗi sau trên postegresql: "subquery trong FROM không thể đề cập đến mối quan hệ khác của cấp truy vấn tương tự". Vì vậy, tôi bị mắc kẹt. Có ai biết làm thế nào tôi có thể đạt được điều đó?
Cảm ơn
Trên thực tế nó có vẻ như điều này sẽ làm việc trên Postgres (có thể 6 năm trước đây nó đã không :)) – qwertzguy