|
Помогите составить запрос: 1 таблица, 2 поля...
|
|||
---|---|---|---|
#18+
  Не могу составить запрос для следующей задачи. Имеется всего одна таблица workers, в которой два поля: prof(префессия) и sex(пол). Например: Таблица workers: prof........| sex ------------+------------------ токарь......| мужик секретарь...| баба токарь......| мужик вахтер......| баба и т.д. ....   Нужно создать запрос, который даст количество баб и мужиков для каждой профессии, т.е. три поля prof,cmen,cwomen и при этом чтобы была возможность отсортировать по cmen, т.е. например, чтобы с помощью этого одного запроса можно было бы вывести следующее: ...prof.....|...cmen......|....cwomen ----------------------------------------- токарь......|.....156.....|........2 водитель....|.....117.....|.......14 вахтер......|......26.....|.......72 секретарь...|.......4.....|.....9632   Вот блин, не знаю как решить такую простую как кажется на первый взгляд задачу. Хотелось бы ее решить без вьюшек, без всяких фишек с данными MS SQL, здорово узнать как такое зделать на простом MySQL, но на самом деле мне это нужно на Postgress. Можно ли это сделать одним простым запросом(т.е чтобы во всех СУБД работал)? А то там где я работаю, SQL никто не знает(включая меня). Помогите пожалуйста. Кто чем сможет :о) ... |
|||
:
Нравится:
Не нравится:
|
|||
25.01.2002, 05:15 |
|
Помогите составить запрос: 1 таблица, 2 поля...
|
|||
---|---|---|---|
#18+
select distinct prof, мужиков=(select count(*) from MyTable t2 where t2.prof = t1.prof and sex = 'мужик') as , баб = (select count(*) from MyTable t3 where t3.prof = t1.prof and sex = 'баба') from MyTable t1 ... |
|||
:
Нравится:
Не нравится:
|
|||
25.01.2002, 14:01 |
|
|
start [/forum/topic.php?fid=56&msg=32021532&tid=2017109]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
29ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
50ms |
get tp. blocked users: |
1ms |
others: | 231ms |
total: | 355ms |
0 / 0 |