даров! как можно выбирать строку таблицы по его номеру, т.е. уникального идентификатора нету, а номер - где помещается строка.
malemail2 Уникальный идентификатор - это и есть в своем роде номер строки, с некоторыми оговорками. Добавьте новый столбец и все.
armadillo создали бд. она пусто. добавляем туда что то. там пока 1 строка. еше добавляем, уже 2 строки и т.д. строки добавляются последовательно. можно сказать 1, 2 ... n-я строка. соответственно как выбрать 1 или 2 или n-ю строку с запроса? Kreker если удалить какую то строку у уникального идентификатора будет обломок, т.е. если удалить на пр. 21 строку, будет 20, 22, а 21 первого не будет. я хочу чтобы номеры уникального идентификатора соответствовали номерами строк, т.е. в моем примере у 21 строке уникальный идентификатор будет 22.
malemail2 Про эти "оговорки" я и имел ввиду. Язык sql таков, что выбрать всего лишь одну строку можно только с помощью условной конструкции с помощью сравнения значений столбца с необходимым (или ограничения LIMIT)
Ну можно ввести искусственный rowid почти как в оракле например, есть таблица test следующего содержания: [sql] select * from test id value _______________ 1 22 3 44 4 55 5 11 8 17 9 55 10 88 [/sql] id - автоинкрементируемый ключ, как видим, записи были удалены и номера идут не по порядку вводим искусственный ключ [sql] select @rowid:=0 rowid,null id,null value from dual union select @rowid:=@rowid+1, id, value rowid from test order by id rowid id value ____________________________ 0 null null 1 1 22 2 3 44 3 4 55 4 5 11 5 8 17 6 9 55 7 10 88 [/sql] тут первая строчка с нулевыми значениями образована первым селектом, который нужен для того, чтобы обнулить изначально значение переменной @rowid, иначе это значение будет накапливаться с каждым запросом. Возможно обнулить переменную можно и более изящным способом, если знаете - подскажите. теперь, скажем нам нужно взять конкретно 4-ю строчку: [sql] select * from( select @rowid:=0 rowid,null id,null value from dual union select @rowid:=@rowid+1, id, value rowid from test order by id) t where t.rowid=4 rowid id value __________________________________ 4 5 11 [/sql] вот так вот все это я написал из чисто академического интереса не знаю, есть ли у данного метода практическое применение