> -----Original Message----- > From: pgsql-general-owner@xxxxxxxxxxxxxx > [mailto:pgsql-general-owner@xxxxxxxxxxxxxx]On Behalf Of Bob Pawley > Sent: 23 janvier 2008 13:51 > To: PostgreSQL > Subject: Count > > > I have a table with four columns that will either be null or hold the value > 'true'. > > I want to obtain the count of these columns, within a particular row, that > have 'true' as a value (0 to 4). > > I have attempted the Select count method but it seems that I need something > more. > > If anyone has any thoughts it would be much appreciated. > > Bob > Or something like this ? create table test ( id_test serial, c1 boolean, c2 boolean, c3 boolean, c4 boolean ); insert into test (c1,c2,c3,c4) values ( true, null, null, true),( true, true, null, true),( null, null, null, null); select id_test, (case when c1 is null then 0 else 1 end)+(case when c2 is null then 0 else 1 end)+(case when c3 is null then 0 else 1 end)+(case when c4 is null then 0 else 1 end) as total from test; id_test | total ---------+------- 1 | 2 2 | 3 3 | 0 Regards, Charles Simard ---------------------------(end of broadcast)--------------------------- TIP 1: if posting/reading through Usenet, please send an appropriate subscribe-nomail command to majordomo@xxxxxxxxxxxxxx so that your message can get through to the mailing list cleanly