SQLinfo.ru - Все о MySQL

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

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

Вы не зашли.

#1 06.07.2007 18:29:23

ASiMO
Участник
Зарегистрирован: 06.07.2007
Сообщений: 2

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

Здравствуйте, помогите пожалуйста! Есть таблица
++++++++++++++++++++++++++++++
|   name   |  pet  |  pet_name   |  pet_color   |
|              |         |                   |                  |
|  Vasya   |  cat   |  Murzik       |  green         |
|  Vasya   |  cat   |  Murzik       |  black         |
|  Vasya   |  dog  |  Kesha        |  red            |
|  Vasya   |  cat   |  Kesha        |  white         |
|  Petya    |  dog  |  Sharik       |  red            |
|  Petya    |  dog  |  Palkan       |  green         |
|  Petya    |  cat   |  Murzik       |  black         |
|  Petya    |  cat   |  Sharik       |  black         |
|  Sasha   |  cat   |  Sharik       |  red            |
++++++++++++++++++++++++++++++

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

т.е.

++++++++++++++++++++++++++++++
|   name   |  pet  |  pet_name   |  pet_color   |
|              |         |                   |                  |
|  Vasya   |  cat   |  Murzik       |  green         |
|  Vasya   |  dog  |  Kesha        |  red            |
|  Petya    |  dog  |  Sharik       |  red            |
|  Petya    |  dog  |  Palkan       |  green        |
|  Petya    |  cat   |  Murzik       |  black         |
|  Sasha   |  cat   |  Sharik       |  red            |
++++++++++++++++++++++++++++++

за ранее спасибо.

Неактивен

 

#2 06.07.2007 18:45:08

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

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

Код:

SELECT name,pet,pet_name,pet_color FROM pets GROUP BY name,pet_name;

Недостатком постановки задачи является неоднозначность работы запроса - из двух Шариков может быть выбрана как кошка, так и собака. Несмотря на то, что MySQL не выдает ошибку, с точки зрения SQL более корректным будет запрос:

Код:

SELECT name,pet_name,GROUP_CONCAT(CONCAT(pet,":",pet_color)) FROM pets GROUP BY name,pet_name;

Неактивен

 

#3 06.07.2007 18:49:44

ASiMO
Участник
Зарегистрирован: 06.07.2007
Сообщений: 2

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

Спасибо, попробую

Неактивен

 

Board footer

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