![]() |
![]() |
mae 21.05.2004 - 19:12 |
Мне надо выдернуть из таблицы строку, где поле N типа INT имеет наибольшее значение. Есть ли такая возможность в MySQL ? И как сделать запрос? |
nd 1 - 21.05.2004 - 19:34 | order by N desc limit 1 |
Cool 2 - 21.05.2004 - 19:54 | SELECT MAX(N) from <table> |
Уверенный 3 - 21.05.2004 - 20:59 | Cool, ему нужно строку, а не значение |
Cool 4 - 21.05.2004 - 21:22 | а, да, не прав, невнимательно прочитал... тогда nd прав |
mae 5 - 21.05.2004 - 23:56 | Сенкс! |
netAn 6 - 22.05.2004 - 13:29 |
(0) - если все n разные, то №1 прокатит. Если все строки, n которых максимально, то так === Select * from <table> where n = (select max (n) frщm <table>) === жаль, что мускуль не поддерживает вложенные запросы ) |
Mips 7 - 23.05.2004 - 00:38 | #6, ну а кто не даёт сделать два запроса? ;) |
vbirf 8 - 23.05.2004 - 11:50 | mysql 4.x позволяет делать вложеные запросы |
DIVЕR 9 - 23.05.2004 - 16:37 | только вот не 4.0.х, которые везде установлены на хостингах (потому что это пока Production Release) |
vbirf 10 - 23.05.2004 - 23:59 | 4.0.16 поддерживает... |
Cool 11 - 24.05.2004 - 09:15 | И у скольки процентов хостеров она стоит? |
DIVЕR 12 - 24.05.2004 - 12:44 |
Одно дело, что нормальные хостеры регулярно обновляют версию MySQL. И сейчас рекомендуется поставить 4.0.20. Другое дело, что я нигде не нашёл упоминания о том, что с версии 4.0.16 поддерживаются subqueries (я бы знал об этом...)... Вот здесь http://dev.mysql.com/doc/mysql/en/Subqueries.html пишется, что "Starting with MySQL 4.1, all subquery forms and operations that the SQL standard requires are supported, as well as a few features that are MySQL-specific." В мануале в разделе про обновление также не удалось ничего найти по этому поводу... Либо Мишка прикололся =), либо одно из двух... Вот, пожалуйста - http://dev.mysql.com/doc/mysql/en/News-4.0.x.html Где там есть про subqueries?.. Мишка, если ты не прикололся =)), то подскажи, где можно найти инфу о поддержке вложенных запросов в 4.0.16... :-) Мне это очень интересно! :) |
Kokoc 13 - 25.05.2004 - 17:04 |
О, у меня аналогичная проблема (но mysql 3.23) Есть таблица номеров (поле num). Например: 210 182 66 54 36 (порядок м.б. произвольным). Можно ли как-то одним запросом отобрать 2 записи с номерами, ближайшими (в большую и меньшую сторону) от искомого числа. Т.е. например для 58 должны отобраться две записи - с 54 и 66. У меня получилось только двумя запросами с MIN(num-58). А хотелось бы одним. |
DIVЕR 14 - 25.05.2004 - 17:16 | Сделай UNION =)) |
Kokoc 15 - 25.05.2004 - 18:48 | Гм... попробую. Тоже идея. Спасибо за совет. |