Форум сайта python.su
Доброго времени суток,собст сабж.
Благодарочка всем ответившим!
Офлайн
cursor = connection.cursor() cursor.execute("SELECT * FROM TABLE NAME ORDER BY TIME DESC") result = dict() while len(result) < 3: row = cursor.fetchone() if row is None: break name = row[5] if name not in result: result[name] = row
Офлайн
Почему бы банальным LIMIT не воспользоваться ?
SELECT * FROM my_table ORDER BY id DESC LIMIT 3
Офлайн
VadimK
Начать с того, что мы не знаем какая у нас СУБД. Например, в оракле никакого лимита нет.
И каким образом ваш запрос фильтрует неодинаковые имена?
Офлайн
Одним запросом будет, наверное, так, но это не кроссплатформенно, работает в оракле
select DISTINCT(tn.name), tn.id from tablename tn WHERE ROWNUM <= 3 order by tn.id desc;
Офлайн
Офлайн
У мну постгрес.
Офлайн
Всем спасиб. Помогло.
Офлайн