|
|
|
Выборка строк с одинаковыми значениями полей
|
|||
|---|---|---|---|
|
#18+
Доброго времени суток! Я не программист sql. Мне нужно составить запрос в базу, чтобы решить через phpmyadmin свои задачи. Для начала нужно выбрать из таблицы все строки, содержащие одинаковые значения в некоторых полях. Т.е. пусть есть таблица table с полями id, num, name. В поле name есть значения: name1 name2 name2 name3 name4 name4 name5 Нужно вывести: name2 name2 name4 name4 Как добавлять к выводу нужные мне дополнительные поля, я уже понимаю :) Но как выводить одинаковые значения - вот в этом и вопрос. Заранее спасибо! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.01.2012, 13:00:42 |
|
||
|
Выборка строк с одинаковыми значениями полей
|
|||
|---|---|---|---|
|
#18+
group by <список полей> having count(1) > 1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.01.2012, 13:06:43 |
|
||
|
Выборка строк с одинаковыми значениями полей
|
|||
|---|---|---|---|
|
#18+
Добрый Э - Эх, это не совсем то, что нужно. Выводится: name2 name4 а мне нужно с дублями, т.е.: name2 name2 name4 name4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.01.2012, 16:12:18 |
|
||
|
Выборка строк с одинаковыми значениями полей
|
|||
|---|---|---|---|
|
#18+
Solovok, селект фром таблица джойн (результат предыдущего запроса) т1 он таблица.нейм=т1.нейм ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.01.2012, 16:55:31 |
|
||
|
Выборка строк с одинаковыми значениями полей
|
|||
|---|---|---|---|
|
#18+
SolovokДобрый Э - Эх, это не совсем то, что нужно. Выводится: name2 name4 а мне нужно с дублями, т.е.: name2 name2 name4 name4 ишо вариантик Код: sql 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.01.2012, 17:23:45 |
|
||
|
Выборка строк с одинаковыми значениями полей
|
|||
|---|---|---|---|
|
#18+
Всем огромное спасибо! Оба варианта работают, и то что хотел, я получил. Тему можно закрывать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.01.2012, 18:07:31 |
|
||
|
Выборка строк с одинаковыми значениями полей
|
|||
|---|---|---|---|
|
#18+
ребят, прошу прощения за глупый вопрос, вроде все разжевали, но есть трудность, если в такой же ситтуации нужно выбрать последние значения с совпадениями по одному полю, например есть поле title со значениями: 1 6 6 2 3 5 5 5 Необходимо взять 5 5 5 Пробую так Код: plsql 1. 2. 3. 4. 5. 6. 7. Но берет максимальное значение по date и первое вхождение по одинаковому полю code :( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.07.2014, 13:15:46 |
|
||
|
Выборка строк с одинаковыми значениями полей
|
|||
|---|---|---|---|
|
#18+
egoist37выбрать последние значенияпоследние по какому критерию сортировки? А вообще - в ФАК... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.07.2014, 15:05:46 |
|
||
|
Выборка строк с одинаковыми значениями полей
|
|||
|---|---|---|---|
|
#18+
Akina, selct * from table where title=(select max(title) from table) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.07.2014, 15:13:38 |
|
||
|
Выборка строк с одинаковыми значениями полей
|
|||
|---|---|---|---|
|
#18+
chabapok selct * from table where title=(select max(title) from table) не то, ошибка #1064 - You have an error in your SQL syntax; версия видно не позволяет Akina, по id, date, в общем и то и то будет верно ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.07.2014, 16:26:14 |
|
||
|
Выборка строк с одинаковыми значениями полей
|
|||
|---|---|---|---|
|
#18+
chabapokAkina, selct * from table where title=(select max(title) from table) Прошу прощения, тут была опечатка, так и скопировал, но теперь нулевой результат ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.07.2014, 16:28:07 |
|
||
|
Выборка строк с одинаковыми значениями полей
|
|||
|---|---|---|---|
|
#18+
SELECT * FROM T WHERE code = ( SELECT MAX( code ) FROM T ) AND good_id = 102 так вроде получается, еще значений очень мало, но без указания явно good_id не получалось ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.07.2014, 16:47:06 |
|
||
|
Выборка строк с одинаковыми значениями полей
|
|||
|---|---|---|---|
|
#18+
egoist37ребят, прошу прощения за глупый вопрос, вроде все разжевали, но есть трудность, если в такой же ситтуации нужно выбрать последние значения с совпадениями по одному полю, например есть поле title со значениями: 1 6 6 2 3 5 5 5 Необходимо взять 5 5 5 Пробую так Код: plsql 1. 2. 3. 4. 5. 6. 7. Но берет максимальное значение по date и первое вхождение по одинаковому полю code :( я бы посоветовал пойти путём где было(выше где разжевали) с group by ....having дело в том что в селект можно затолкнуть сразу и каунт и мах(дейт) и джоинтить по совпадению поля и совпадению даты с максимальной. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.07.2014, 17:21:51 |
|
||
|
|

start [/forum/topic.php?fid=47&msg=38706067&tid=1834461]: |
0ms |
get settings: |
5ms |
get forum list: |
12ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
46ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
37ms |
get tp. blocked users: |
1ms |
| others: | 193ms |
| total: | 308ms |

| 0 / 0 |
