【发布时间】:2011-05-02 09:38:08
【问题描述】:
create table Autorzy(ID int, imie varchar, nazwisko varchar);
create table Wydawnictwa(ID int, nazwa varchar, adres varchar, tel varchar);
create table Ksiazki(ID int, ISBN bigint, wydawnictwo_id int, data date, ilosc int, tytul varchar);
create table KsiazkaAutor(ID int, autor_id int, ksiazka_id int);
create table Recenzje (id int, tresc varchar, autor_id int, ksiazka_id int);
我能做到:
select a.imie, a.nazwisko, count(ka.id) as IloscKsiazek
from autorzy a
left join KsiazkaAutor ka on a.id=ka.autor_id
group by a.imie, a.nazwisko;
从 KsiazkaAutor 中选择计数
或
select a.imie, a.nazwisko, count(r.id) as IloscRecenzji
from autorzy a
left join Recenzje r on a.id=r.autor_id
group by a.imie, a.nazwisko;
从 Recenzje 中选择计数。
如何在一个 SELECT 中同时获得两个计数?
编辑: 第一个选择:
"Bolesław";"普鲁斯";3
“亚当”;“科瓦尔斯基”;5
“斯蒂芬”;“国王”;3
“安德烈”;“萨普科夫斯基”;3
"瓦迪斯瓦夫";"雷蒙";3
“理查德”;“道金斯”;3
"Zofia";"Nałkowska";3
“亨利克”;“显凯维奇”;3
“特里”;“普拉切特”;3
“伊丽莎”;“奥热兹科瓦”;4
“亚当”;“密茨凯维奇”;2
"约翰 R.R.";"托尔金";5
"米科瓦伊";"科佩尼克";1
"Leń";"Śmierdzący";0
"一月";"诺瓦克";5
"卡米尔";"科瓦利克";0
"Ignacy";"Krasicki";3
第二次选择:
"Bolesław";"普鲁斯";0
"亚当";"科瓦尔斯基";0
“斯蒂芬”;“国王”;0
"安德烈";"萨普科夫斯基";0
"瓦迪斯瓦夫";"雷蒙";0
“理查德”;“道金斯”;0
"Zofia";"Nałkowska";0
“亨利克”;“显凯维奇”;1
“特里”;“普拉切特”;0
“伊丽莎”;“奥热兹科瓦”;2
"亚当";"密茨凯维奇";0
"约翰 R.R.";"托尔金";0
"米科瓦伊";"科佩尼克";0
"Leń";"Śmierdzący";0
"一月";"诺瓦克";0
"卡米尔";"科瓦利克";0
"Ignacy";"Krasicki";0
你的答案:
"Bolesław";"普鲁斯";3;0
“亚当”;“科瓦尔斯基”;5;0
“斯蒂芬”;“国王”;3;0
"安德烈";"萨普科夫斯基";3;0
"瓦迪斯瓦夫";"雷蒙";3;0
“理查德”;“道金斯”;3;0
"Zofia";"Nałkowska";3;0
"亨利克";"显凯维奇";3;3
“特里”;“普拉切特”;3;0
"伊丽莎";"奥热兹科瓦";8;8
"亚当";"密茨凯维奇";2;0
"约翰 R.R.";"托尔金";5;0
"米科瓦伊";"科佩尼克";1;0
"Leń";"Śmierdzący";0;0
"一月";"诺瓦克";5;0
"卡米尔";"科瓦利克";0;0
"Ignacy";"Krasicki";3;0
【问题讨论】:
标签: select count postgresql