SQLinfo.ru - Все о MySQL

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

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

Вы не зашли.

#1 06.02.2010 15:28:07

maximkaboom
Участник
Зарегистрирован: 06.02.2010
Сообщений: 1

Помогите неопытному.

Добрый день.

я не являюсь програмистом и не стремлюсь им быть, так что не ругайтесь на глупые вопросы. просто возникла такая необходимость немного поработать в MySql:

есть таблица примерно такого вида:

id | name
-------------------------------
# 1 | Арбуз
# 2 | Яблоко
# 3 | Арбуз
# 4 | Груша
# 5 | Арбуз
-------------------------------

Вот собственно вопрос.

Как мне средствами PHP сделать так, чтобы скрипт подсчитывал самое большое количество одинаковых слов и выводил примерно такое:

"Арбуз (3шт.)"



На одном форуме мне посоветовали сделать так:

SELECT `name`, COUNT(`name`)  `cnt`
FROM `tblname`
GROUP BY `name`
ORDER BY `cnt` DESC
LIMIT 1

Но я не до конца представляю, что это smile

Заранее благодарен

Неактивен

 

#2 06.02.2010 16:08:16

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5842

Re: Помогите неопытному.

Посоветовали вам правильно.
Это SQL запрос, который выбирает из таблицы `tblname` самое большое количество одинаковых слов и возращает данное слово `name`  с кол-вом повторений  `cnt`.

Чтобы лучше понять как он работает, отбрасывайте последовательно три последние с конца запроса строчки и анализируйте результат.
Или вы имели в виду что-то другое?

Неактивен

 

Board footer

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