Re: Cross-classified table

Поиск
Список
Период
Сортировка
От Muhyiddin A.M Hayat
Тема Re: Cross-classified table
Дата
Msg-id 00c201c397c8$57120d00$1f00a8c0@middinkcomp
обсуждение исходный текст
Ответ на Cross-classified table  (Alexander Pucher <pucher@atlas.gis.univie.ac.at>)
Список pgsql-novice
> Hi,
> I'm looking for the correct syntax of getting a cross-classified table
> from my SELECT statement.
>
> Let's pretend I have this table:
>
>
> origin        sex
> ----------------
> USA        male
> USA        female
> China      male
> China      male
> UK           male
> USA        male
>
>
> and I want as result something like:
>
>                male      female
>
> USA        2            1
> China      2            0
> UK           1            0
>
>
> How can I get this?
>

You can use below SQL

SELECT
  origin,
  SUM(
   CASE
     WHEN (sex ='male') THEN 1
     ELSE 0
   END
  ) AS male,
  SUM(
   CASE WHEN (sex ='female') THEN 1
     ELSE 0
   END
  ) AS female

FROM
  table1
GROUP BY origin

 Best regards,
Muhyiddin A.M Hayat



В списке pgsql-novice по дате отправления:

Предыдущее
От: Bruno LEVEQUE
Дата:
Сообщение: Re: Cross-classified table
Следующее
От: Michael Glaesmann
Дата:
Сообщение: Custom function problems