Ну и запросец!!!!

Dimonets

Guest
Ну и запросец!!!!

Люди помогите плиз со сложнейшей проблемой.

Так сложилось что есть у меня две таблицы:
members(id, username, password)
profiles(id, realname, country)

Логика работы такая - для каждого мембера сайта заводятся запись в таблице members и записи в таблице profiles (таблицы связаны по id, которое автоинкремент). Возможно что у одного мембера несколько профайлов - те для одного мембера несколько записей в таблице profiles - для каждого имени пользователя, но поле country одинаковое у всех профайлов одного мембера.

Те возможны такие данные:

members:
0,'tester','******'
1,'user1','******'
2,'user2','******'
3,'user3','******'

profiles
0,'Pupkin','Ukraine'
1,'Pupkin1','USA'
1,'Pupkin2','USA'
1,'Pupkin3','USA'
2,'Pupkin4','UK'
2,'Pupkin5','UK'
3,'Pupkin6','USA'
3,'Pupkin7','USA'

Так вот мне нужно выбрать количество member-ов (не профайлов!) для каждой из имеющихся стран, типа (для приведенного выше примера):

Ukraine - 1 member
USA - 2 members
UK - 1 member

Как бы это грамотно сделать? А то мне кажется, что без двух запросов не обойтись никак....

Спасибо!
 

Demiurg

Guest
select country , count(distinct id )
from profiles group by country
а почему бы не перенести country в members ?
 

Dimonets

Guest
Ой спасибки!!!!!!!
А перенести не желательно - полей на самом деле больше в таблицах и для понимания необходимо чтобы личные данные были в профайлах а статистические в members
 

Demiurg

Guest
если это у тебя личные данные, то почему все пользователи живут в одной стране ?
 

Dimonets

Guest
так задумано! :)
по-другому быть не может.....
 

Demiurg

Guest
если по другому быть не может, то поле country должно быть в members иначе у тебя получается избыточность.
 
Сверху