kedoff
Июль 26, 2010 10:36:23
в таблице live_broadcost 20 записей с id от 1 до 20. мне нужно выбрать id 10ой записи.
#!/usr/local/bin/python
# -*- coding: koi8-r -*-
import MySQLdb
db = MySQLdb.Connect(...)
cursor = db.cursor()
cursor.execute("SELECT MAX(id) from live_broadcost ORDER BY id LIMIT 0,10");
maxid = cursor.fetchone()[0];
print maxid;
db.close();
получаю всега максимальный id в таблице.
Lexander
Июль 26, 2010 10:50:22
Потому что сначала срабатывает функция MAX, а выборка обрезается в самую последнюю очередь.
ORDER BY id DESC - и первой записью всегда будет максимальный ID в пределах указанной выборки.
kedoff
Июль 26, 2010 11:02:14
да,вы правы, только что освежил переписав код на пхп и получил тоже самое. может знаете как быть?
kedoff
Июль 26, 2010 11:05:11
вспомнил
$result = mysql_query('SELECT MAX(id) FROM (SELECT id FROM live_broadcost ORDER BY id LIMIT 10) AS T1' , $db) or die(mysql_error());
bigvovka
Сен. 24, 2010 12:19:46
а чем не нравится SELECT id from live_broadcost ORDER BY id LIMIT 9,1 ?
да и вообще, по условию задачи вы уже знаете заранее id записи :)