Отправляет email-рассылки с помощью сервиса Sendsay

RFpro.ru: Базы данных MySQL

  Все выпуски  

RFpro.ru: Базы данных MySQL


Хостинг портала RFpro.ru:
Московский хостер
Профессиональный ХОСТИНГ на базе Linux x64 и Windows x64

РАССЫЛКИ ПОРТАЛА RFPRO.RU

Лучшие эксперты по данной тематике

Гуревич Александр Львович
Статус: Профессионал
Рейтинг: 4861
∙ повысить рейтинг »
Коцюрбенко Алексей aka Жерар
Статус: Профессор
Рейтинг: 2767
∙ повысить рейтинг »
Абаянцев Юрий Леонидович aka Ayl
Статус: Профессионал
Рейтинг: 2138
∙ повысить рейтинг »

/ КОМПЬЮТЕРЫ И СОФТ / Базы данных / MySQL

Номер выпуска:471
Дата выхода:17.10.2011, 17:30
Администратор рассылки:Абаянцев Юрий Леонидович aka Ayl (Профессионал)
Подписчиков / экспертов:269 / 130
Вопросов / ответов:1 / 1

Консультация # 184203: Уважаемые эксперты! Пожалуйста, ответьте на вопрос: Добрый день! Имеется SQL-запрос, который возвращает 15 значений из БД. Мне нужно сделать DISTINCT для этих значений. Если я делаю без условия IF – все работает, а вот вместе с проверкой условия поставить DISTINCT (group_name) не получается. Код в приложении. Буду очень благодарен за...


Консультация # 184203:

Уважаемые эксперты! Пожалуйста, ответьте на вопрос:
Добрый день! Имеется SQL-запрос, который возвращает 15 значений из БД.
Мне нужно сделать DISTINCT для этих значений.
Если я делаю без условия IF – все работает, а вот вместе с проверкой условия поставить DISTINCT (group_name) не получается.
Код в приложении.
Буду очень благодарен за помощь.

Дата отправки: 12.10.2011, 16:58
Вопрос задал: Finrod (Посетитель)
Всего ответов: 1
Страница онлайн-консультации »


Консультирует lupus campestris (Академик):

Здравствуйте, Finrod!

Мой вариант:
SELECT IF( group_name = '', '34', group_name ) AS group_name FROM f_students WHERE fvuzkursid = '12' group by group_name;

Результат:
mysql> select * from f_students;
+------------+------------+
| group_name | fvuzkursid |
+------------+------------+
| first | 12 |
| first | 12 |
| first | 12 |
| | 12 |
| | 12 |
| second | 12 |
| second | 12 |
| second | 12 |
| second | 12 |
| second | 12 |
+------------+------------+
10 rows in set (0.00 sec)

mysql> SELECT IF( group_name = '', '34', group_name ) AS group_name FROM f_students WHERE fvuzkursid = '12' group by group_name;
+------------+
| group_name |
+------------+
| 34 |
| first |
| second |+------------+
3 rows in set, 1 warning (0.00 sec)

Удачи!

Консультировал: lupus campestris (Академик)
Дата отправки: 12.10.2011, 19:58

5
нет комментария
-----
Дата оценки: 13.10.2011, 01:25

Рейтинг ответа:

НЕ одобряю 0 одобряю!


Оценить выпуск | Задать вопрос экспертам

главная страница  |  стать участником  |  получить консультацию
техническая поддержка  |  восстановить логин/пароль

Дорогой читатель!
Команда портала RFPRO.RU благодарит Вас за то, что Вы пользуетесь нашими услугами. Вы только что прочли очередной выпуск рассылки. Мы старались. Пожалуйста, оцените его. Если совет помог Вам, если Вам понравился ответ, Вы можете поблагодарить автора - для этого в каждом ответе есть специальные ссылки. Вы можете оставить отзыв о работе портале. Нам очень важно знать Ваше мнение. Вы можете поближе познакомиться с жизнью портала, посетив наш форум, почитав журнал, который издают наши эксперты. Если у Вас есть желание помочь людям, поделиться своими знаниями, Вы можете зарегистрироваться экспертом. Заходите - у нас интересно!
МЫ РАБОТАЕМ ДЛЯ ВАС!



В избранное