Помогите создать SQL запрос

12
A
На сайте с 27.01.2006
Offline
22
1436

Столкнулся с проблемой выбора записей по одному уникальному полю:

---------------------

| id | marka | model |

---------------------

| 1 | rover | 75 |

---------------------

| 2 | rover | 825 |

---------------------

| 3 | alfa-r | 75 |

---------------------

| 4 | alfa-r | 155 |

---------------------

| 5 | rover | 75 |

---------------------

| 6 | rover | 75 |

---------------------

нужно выбрать записи по уникальному полю marka

P/S Интересует все уникальные по model записи где marka='rover'

в результате хочу

---------------------

| id | marka | model |

---------------------

| 2 | rover | 825 |

---------------------

| 6 | rover | 75 |

---------------------

Solmyr
На сайте с 10.09.2007
Offline
501
#1

SELECT * FROM `atable` WHERE marka='alfa-r'

[Удален]
#2

>по уникальному полю marka

вообще, столбец marka не уникальный, судя по приведённому примеру

>SELECT * FROM `atable` WHERE marka='alfa-r'

соответственно, данное решение НЕ правильное, если столбец - не уникальный

ТС, уточните задачу или скорректируйте пример

A
На сайте с 27.01.2006
Offline
22
#3

abrikos добавил 25.05.2008 в 12:05

точнее так: Интересует все уникальные записи model где marka='rover'

abrikos добавил 25.05.2008 в 12:07

но SELECT DISTINCT model FROM table WHERE marka='rover'

не подходит т.к. нужны все поля

S
На сайте с 09.10.2007
Offline
186
#4

SELECT id,model,marka FROM table WHERE marka='rover' group by model

Удобная панель для доменных имен (http://panel.started.ru/) с массовыми операциями. Индивидуальные цены по запросу.
HH
На сайте с 31.03.2005
Offline
46
#5
abrikos:
abrikos добавил 25.05.2008 в 12:05
точнее так: Интересует все уникальные записи model где marka='rover'
abrikos добавил 25.05.2008 в 12:07
но SELECT DISTINCT model FROM table WHERE marka='rover'
не подходит т.к. нужны все поля

Либо все, либо уникальные.

Или я не понимаю в чем выуникальность измеряете :)

Рецепты от HabaHaba (http://www.haba-cooking.ru/)
Коля Дубр
На сайте с 02.03.2005
Offline
153
#6

Чего-то я ничерта не понял :)

Строки, которые Вы выписали - это то что есть, или то что должно получиться?

Может "GROUP BY marka, model" поможет отцу русской демократии?

Разрабатываю общую шину (http://habrahabr.ru/company/floxim/blog/268467/) помаленьку. ...а еще у меня есть бложек (http://www.blogovo.ru/).
A
На сайте с 27.01.2006
Offline
22
#7

В результате хочу получить

---------------------

| id | marka | model |

---------------------

| 1 | rover | 75 |

---------------------

| 2 | rover | 825 |

---------------------

abrikos добавил 25.05.2008 в 12:40

simka:
SELECT id,model,marka FROM table WHERE marka='rover' group by model

почти в точку но вот в некоторых случаях дает результат

---------------------

| id | marka | model |

---------------------

| 2 | rover | 825 |

---------------------

| 3 | alfa-r | 75 |

---------------------

а нужно чтоб так

---------------------

| id | marka | model |

---------------------

| 2 | rover | 825 |

---------------------

| 6 | rover | 75 |

---------------------

S
На сайте с 15.01.2008
Offline
34
#8

abrikos,как вариант загнать полученные значения в двухмерный массив,а уже в массиве array_unique();

И все повторы будут удалены.

Качественный хостинг Unlimits Telecom (http://www.unlimits.ru) (ООО "БизнесТелеКом"). Официальный Twitter канал (http://twitter.com/untelecom). Ознакомиться с нашими услугами можно в этом (/ru/forum/478822) топике.
A
На сайте с 27.01.2006
Offline
22
#9
stack:
abrikos,как вариант загнать полученные значения в двухмерный массив,а уже в массиве array_unique();
И все повторы будут удалены.

блин ну очень хочется реализовать запросом

psylosss
На сайте с 23.12.2005
Offline
126
#10
stack:
abrikos,как вариант загнать полученные значения в двухмерный массив,а уже в массиве array_unique();
И все повторы будут удалены.

очень и очень кривой вариант.

abrikos:

SELECT id,model,marka FROM table WHERE marka='rover' group by model

почти в точку но вот в некоторых случаях дает результат
---------------------
| id | marka | model |
---------------------
| 2 | rover | 825 |
---------------------
| 3 | alfa-r | 75 |
---------------------

это в каких, интересно, случаях?

Веб-разработка. Сложные проекты. Проектирование. Проект-менеджмент. Стартапы.
12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий