|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
27.10.2011, 23:12 | #1 |
Участник клуба
Регистрация: 07.07.2009
Сообщений: 1,385
|
POSTGRE: выборка данных соотв. значению из той же таблицы
Здраствуйте.
Немного путанный заголовок. Идея в следующем. Я обрабатываю таблицу "Student" и вывожу группу (t_group) с самым большим количеством студентов. Из той же таблицы мне надо соотвественно коду этой группы вывести список студентов. Никак фантазии не хватает, как это сделать. Пока есть такой код: Код:
Как бы выкрутиться похитрее и вывести имена студентов самой многочисленной группы. Я понимаю, что запрос простенький, но уже фантазии не хватает - целый вечер с ним сижу.
"Все мы жаждем чудес. Чисто человеческое свойство." Carl Sagan
Последний раз редактировалось Blondy; 27.10.2011 в 23:15. |
27.10.2011, 23:28 | #2 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
а попробуйте так (хотя не все СУБД поддерживают подзапросы во FROM):
Код:
Код:
Последний раз редактировалось Serge_Bliznykov; 27.10.2011 в 23:30. |
27.10.2011, 23:36 | #3 |
Участник клуба
Регистрация: 07.07.2009
Сообщений: 1,385
|
Какой, Сережа, Вы хитрый!))) "Слон" все скушал и не подавился)))
Я сейчас сформулирую вопросы к этому коду и попрошу Вас на них ответить. У меня тоже была идея с псевдонимами для таблиц, но на все мои попытки написать код с псевдонимами, меня среда отправляла погулять)) PS Вы первый человек, о котором я подумала - вот Сережа бы в раз решил эту проблему)))) А Вы ну прямо как принц из сказки появились в самый необходимый момент))) То есть получается, Сережа, что мы псевдонимы можем давать не только таблицам, но и неким выборкам из них - типа как переменным в серьезном программировании? Если честно для меня это новость - Вы мне открыли глаза на мир)))) Кстати, а если таких групп несколько - вот в этой группе получилось 4 человека, а ведь у меня есть другая группа, где тоже 4 человек учатся. А ведь LIMIT 1 выводит только первую строчку, а вторая группа типа не при делах. Интересно, мы можем использовать не LIMIT 1, а MAX, если выводимые данные (название группы) - символьные?
"Все мы жаждем чудес. Чисто человеческое свойство." Carl Sagan
Последний раз редактировалось Stilet; 30.10.2011 в 11:27. |
28.10.2011, 00:49 | #4 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
Сергей наверно бай-бай отправился Это для нескольких групп с одинаковым MAX кол-ва студентов
Код:
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
28.10.2011, 01:39 | #5 |
Участник клуба
Регистрация: 07.07.2009
Сообщений: 1,385
|
О, дорогой Аватар, вы мужественный Птиц!!!!)) Фиг бы я сама до такого додумалась. Я сейчас тестить не буду - я тоже спать, завтра, вернее сегодня утро начинается в 6))
Ну вот почему у меня в голове совсем другие концепции крутятся. В теории написано - что если мы используем конструкцию подзапроса where .... in (), то для более точной выборки мы можем использовать конструкцию where ... all (), и он нам как раз выведет из подзапроса все группы, где количество студентов максимально и количество студентов в них равно максимальному значению. Я видно как-то не так поняла этот оператор - как логическое "и".
"Все мы жаждем чудес. Чисто человеческое свойство." Carl Sagan
|
28.10.2011, 13:22 | #6 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
А Птиц - это кто?
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
28.10.2011, 14:54 | #7 | ||
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
Цитата:
Blondy, насколько я понимаю, вопросы уже снялись сами собой? Ну да, выборкам/подзапросам можно давать имена. Иногда это полезно, а иногда - даже строго обязательно! вопрос с выборкой студентов всех групп (если максимальное число более чем в одной группе) Аватар уже закрыл. (а кто бы сомневался!!! ) Blondy, позвольте ещё дать маленький совет. Есть такая книжка, Мартин Грубер "Понимание SQL" (она же "Understanding SQL") Она для использования SQL, имхо, как букварь. Основные принципы SQL я изначально почерпнул именно из этой книжки. (ну а потом опыт, решение возникающих практических задач, чтение форумов (очень силён форум sql.ru)... ну и учитывать надо, что во всех СУБД свои "фишки", где-то удобнее, где-то менее - нет). Полистайте её, вдруг понравится!.. p.s. Спасибо за добрые слова! |
||
30.10.2011, 00:18 | #8 | |
Участник клуба
Регистрация: 07.07.2009
Сообщений: 1,385
|
Ну конечно наш дорогой Аватар Принц))) Но вообще-то Птиц было сказано умышлено - так как у Аватара на картинке изображена птичка))) Это так, в шутку, и надеюсь Аватар не обиделся. Все-таки люди помещают себе картинки на аватарку с каким-то умыслом, и эти картинки их характеризуют)))
Вот Сережа, против чтения умных книжек я никогда не противилась. Может быть у Вас есть ссылка, откуда я могла бы достать ее электронный вариант, если конечно такой имеется. А вживую эту книгу тоже буду искать. Потому как случается, что казалось бы элементарные для профи вопросы меня ставят в тупик - я понимаю, что решение очень простое, но не хватает фантазии, знаний и изящности мыслей. Добавление 23:22 В догонку - я нашла электронный вариант книги, счас глазами пробегу - полный это вариант, или обрезанный. Дорогой Аватар, у меня прямо-таки пожарная ситуация - на Ваш запрос среда произносит страшное слово "ambiguous": Цитата:
"Все мы жаждем чудес. Чисто человеческое свойство." Carl Sagan
Последний раз редактировалось Stilet; 30.10.2011 в 11:29. |
|
30.10.2011, 01:26 | #9 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
Наверно еще один псевдоним добавить надо
Код:
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
30.10.2011, 01:39 | #10 |
Участник клуба
Регистрация: 07.07.2009
Сообщений: 1,385
|
Вот мне бы такую умную голову, как у Вас))) Все работает теперь))
Я чтобы не быть совсем уж блондинкой тоже паралельно действовала. Но я накрутила псевдонимы совсем не там, где Вы)) Вот что получилось у меня: Код:
Естественно фокус не удался))) Среда запнулась сразу на втором Селекте)))
"Все мы жаждем чудес. Чисто человеческое свойство." Carl Sagan
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Вывод характеристик ОП в таблицы GPSS | GaJIbI4 | Помощь студентам | 5 | 25.06.2012 10:07 |
Выборка двух характеристик из списка | tns-ka | Microsoft Office Excel | 2 | 21.10.2010 12:29 |
Выборка по номеру или значению | sergeyminb | Microsoft Office Excel | 9 | 27.08.2010 16:09 |
Выборка чисел по значению другого столбца | faker | Microsoft Office Excel | 4 | 10.11.2009 14:40 |
Выборка строк из таблицы по значению TDBLookupComboBox | Gringo | БД в Delphi | 4 | 28.10.2008 05:45 |