179 / 180 / 54
Регистрация: 01.06.2011
Сообщений: 507
1

Как выбрать не повторяющиеся строки из MySql вместе со всем содержимым этих строк

11.05.2012, 16:10. Показов 18425. Ответов 10
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Добрый день, кибер-люди.
У меня возникла необходимость выбрать из базы данных только строки с уникальными полями.
Например, у нас есть таблица
ID || RATING || NAME
1 || 4 || Дима
2 || 4 || Женя
3 || 5 || Катя
4 || 6 || Дима
5 || 5 || Валера


Если использовать запрос
MySQL
1
SELECT DISTINCT(`RATING`) FROM `db`
То выведет: 4,5,6 - Правильно.
Если использовать запрос
MySQL
1
SELECT DISTINCT(`RATING`), `NAME` FROM `db`
То выведет всю таблицу, будто мы написали SELECT * FROM

Собственно мне нужно, чтобы результатом вывода было:
1 || 4 || Дима
3 || 5 || Катя
4 || 6 || Дима
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
11.05.2012, 16:10
Ответы с готовыми решениями:

Удаление из строки скобок вместе со всем их содержимым
надо удалить то что в скобках вместе со скобками . составил прогу но она не пашет . помогите...

Даны 2 строки. Верно ли, что сумма длин этих строк кратно произведению этих строк
даны 2 строки. Верно ли, что сумма длин этих строк кратно произведению этих строк, а так же первая...

Как выставить права на папку вместе с её содержимым?
Если я пытаюсь установить права на папку, скажем /myfolder: sudo chmode 777 /myfolder. То права...

Как удалить скрытую папку вместе с содержимым
Добрый день. Необходимо удалить скрытую папку вместе с содержимым в ней, либо удалить содержимое...

10
4226 / 1795 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
11.05.2012, 16:16 2
Но целиком же строки как раз не повторяются, хоть всю таблицу выводи.
0
179 / 180 / 54
Регистрация: 01.06.2011
Сообщений: 507
11.05.2012, 16:18  [ТС] 3
Всю таблицу мне не надо и нельзя. Нужно только так, как описано в конце.
0
614 / 488 / 175
Регистрация: 02.03.2010
Сообщений: 1,238
11.05.2012, 17:45 4
Либо задача поставлена некорректно, либо я что-то не понимаю.
У "Дима" и "Женя" значение в поле RATING равно 4 у обоих, какая запись должна быть в результирующем наборе? Критерии отбора надо знать.
Ну а если все равно, то:
SQL
1
2
SELECT DISTINCT(`RATING`), `NAME` FROM `db`
GROUP BY RATING
Но не факт, что будет "так как в конце", вместо Димы, где 4 может быть Женя, а вместо Кати может быть Валера
1
179 / 180 / 54
Регистрация: 01.06.2011
Сообщений: 507
11.05.2012, 18:30  [ТС] 5
_ViPeR_, уже нагуглил такое же решение, кстати DISTINCT не нужен, вроде бы. Всё равно спасибо за ответ.
0
179 / 180 / 54
Регистрация: 01.06.2011
Сообщений: 507
16.05.2012, 12:32  [ТС] 6
Цитата Сообщение от _ViPeR_ Посмотреть сообщение
Но не факт, что будет "так как в конце", вместо Димы, где 4 может быть Женя, а вместо Кати может быть Валера
Да, высветилась такая проблемка. Кто-нибудь знает что добавить к запросу?
0
Модератор
4217 / 3058 / 583
Регистрация: 21.01.2011
Сообщений: 13,205
16.05.2012, 13:08 7
Цитата Сообщение от ushim
Кто-нибудь знает что добавить к запросу?
ORDER BY
?
0
0 / 0 / 0
Регистрация: 26.11.2014
Сообщений: 2
26.11.2014, 17:57 8
Все правильно !вот пример
baza
dima 4
dima 5
dima 6
valya 4
valya 4
valya 5

SELECT DISTINCT(`name`),`rating` FROM `db` GROUP BY `name`
name rating
dima 4
valya 4

SELECT DISTINCT(`rating`),`name` FROM `db` GROUP BY `rating`
rating name
4 dima
5 dima
6 dima
0
311 / 271 / 118
Регистрация: 05.06.2013
Сообщений: 868
26.11.2014, 20:52 9
Почему-то мне кажется, что автор уже разобрался в проблеме
0
0 / 0 / 0
Регистрация: 26.11.2014
Сообщений: 2
27.11.2014, 11:42 10
Можно просто
SELECT `rating`,`name` FROM `db` GROUP BY `rating`
без DISTINCT(`rating`)
0
4226 / 1795 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
27.11.2014, 11:51 11
ushim, даже в первой нормальной форме ни одна строка ни одной таблицы в принципе не должна полностью повторяться. Или у Вас не БД, а чёрт знает что.
0
27.11.2014, 11:51
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
27.11.2014, 11:51
Помогаю со студенческими работами здесь

Как удалить повторяющиеся или выбрать уникальные по одному полю строки из DataTable?
Всем привет. Как удалить повторяющиеся или выбрать уникальные по одному полю строки из DataTable ...

Как на JS спрятать одну ячейку таблицы вместе с ее содержимым?
Как на JS спрятать одну ячейку таблицы вместе с ее содержимым...

Утилита PSFTP, как скачать папку вместе с содержимым?
День добрый, подскажите новичку пожалуйста, как с помощью PSFTP скачать папку вместе с содержимым?...

Как из ВБ удалить каталог со всем содержимым в нём?
Как мне из ВБ удалить каталог со всем содержимым в нём. Знаю API функцию которая удаляет каталог,...

Как удалить теги со всем содержимым из кода?
как удалить теги <iframe> и <object> и все что между ними с кода? Пример: <body> <table...

Как узнать размер директории со всем ее содержимым?
Добрый вечер. Подскажите, пожалуйста, как узнать размер директории(папки) со всеми вложенными...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru