SQLinfo.ru - Все о MySQL Webew.ru: теория и практика веб-технологий

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 16.12.2007 21:26:20

dimmonz
Участник
Зарегистрирован: 16.12.2007
Сообщений: 3

формулировка запроса - вывод повторяющихся значений

Привет всем!
Пожалуйста, направьте меня на путь истинный -)

Имеется пополняющаяся таблица, подобная

Код:

|surname|age|votes|from|task|result|
|petrov|23|2|spb|54|18|
|sidorov|36|2|moskva|50|16|
|petrov|15|1|moskva|54|16|
|pupkin|23|2|spb|46|19|

т.е. содержит повторяющиеся значения в том/ином столбце.

Как будет выглядеть запрос, выводящий количество строк, не учитывая повторяющиеся?

т.е., фактически, одним запросом нужно тупо вывести число встречающихся в таблице фамилий, не учитывая повторяющиеся, в данном случае - 3;
другим - число городов, в данном случае - 2, и т.д...

Отредактированно dimmonz (16.12.2007 21:27:46)

Неактивен

 

#2 16.12.2007 21:30:57

rgbeast
Администратор
MySQL Authorized Developer and DBA
Откуда: Москва
Зарегистрирован: 21.01.2007
Сообщений: 3880

Re: формулировка запроса - вывод повторяющихся значений

SELECT COUNT(DISTINCT surname) cs FROM tbl;
SELECT COUNT(DISTINCT from) cf FROM tbl;

Неактивен

 

#3 16.12.2007 21:47:41

dimmonz
Участник
Зарегистрирован: 16.12.2007
Сообщений: 3

Re: формулировка запроса - вывод повторяющихся значений

огромное спасибо!
с Вашего позволения, еще один вопрос:

как вывести наиболее часто встречающееся значение в том/ином столбце?

Неактивен

 

#4 16.12.2007 21:49:31

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6757

Re: формулировка запроса - вывод повторяющихся значений

SELECT surname, COUNT(*) as cnt
FROM tbl
GROUP BY 1
ORDER BY 2 DESC
LIMIT 1

Неактивен

 

#5 16.12.2007 22:08:18

dimmonz
Участник
Зарегистрирован: 16.12.2007
Сообщений: 3

Re: формулировка запроса - вывод повторяющихся значений

благодарю!

*счастлив*

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson