Например, у меня есть таблица A:
id name
----------------
1 one
2 two
3 three
4 four
И нужно произвести
select * from A order by name (Именно такой!)
Как узнать(средствами SQL) какой по счёту будет запись с id = 1?
Вообще, возможно ли это?
База MySQL
Комментарии (18)
Похожие записи
-
KTO LAMAIT IRC.LV? Warning: mysqli::next_result() [function.mysqli-next-result]: Couldn't fetch mysqli in /www/sql/database.php on line 29
OmgImFamous (36) 2432 7 19. августа, 2007.г. -
продаю оригинал: weblancer.net, dalance.ru, pula.com.ua, yanaidu.ru (со всеми файлами + sql базой)
imfamous 1690 4 8. февраля, 2010.г.
Ну, я, может, талантливый лингвист (:
Филолог, он и в...
(:
Только должно быть "<=" вместо "<"
Ну, извините, я - филолог, а не программист (:
where exists (select 1 from a where id = 1 and b.name <= name)
Щас еще подумаю, как можно заставить свой мозг плав%
Можешь предложить что-нибудь более современное?
Возможно, в ORACLE что-нить и есть, но в MySQL я ничё похожего не нашёл.
Дедовские у вас методы.. =))
И потом.. не могу точно сказать о "мускуле" (с ораклёй работаю), но даже твой селектик следует видоизменить.
Не уверен на 100%, что в mySQL сие отработает, но вроде корректно.
SELECT COUNT(*) FROM `A` WHERE `name`<'name_из_предыдущего_запроса '
Я именно так и сделал(ну на подобии этого).
Только должно быть "<=" вместо "<"
SELECT `name` FROM `A` WHERE `id`=1
SELECT COUNT(*) FROM `A` WHERE `name`<'name_из_предыдущего_запроса '
Я уже сам придумал как это сделать.