Matt
спасибо
Slam!
ох эти модули...
Svyatoslav
Народ, вопрос такой есть. Я не понимаю как работает SQLite. Проблема в следующем: Запрос, построенный библиотекой SQLAlchemy ругается на синтаксическую ошибку. Если этот запрос скопировать/вставить в консоль, он выполняется корректно. Может ли быть так, что SQLAchemy использует одну версию чего-то а консоль другую?
Ilya
Кавычки?
Svyatoslav
sqlalchemy.exc.OperationalError: (sqlite3.OperationalError) near "(": syntax error [SQL: SELECT row_number() OVER (ORDER BY events_days.date, master_classes.time) AS anon_1, master_classes.id AS master_classes_id, master_classes.title AS master_classes_title, master_classes.description AS master_classes_description, master_classes.is_visible AS master_classes_is_visible, master_classes.media_block_id AS master_classes_media_block_id, master_classes.time AS master_classes_time, master_classes.location AS master_classes_location, master_classes.track_id AS master_classes_track_id, master_classes.day_id AS master_classes_day_id, master_classes.event_id AS master_classes_event_id FROM master_classes JOIN events_days ON events_days.id = master_classes.day_id WHERE master_classes.is_visible = 1 AND ? = master_classes.event_id AND ? = master_classes.track_id ORDER BY events_days.date, master_classes.time LIMIT ? OFFSET ?] [parameters: ('bc34ff4c-d69c-4040-b82a-430bb0a055df', 'd9f8d026-9bef-4730-b68c-857cd88ed0d0', 8, 0)]
Tishka17
Хм
Svyatoslav
Конкретно данная проблема появилась после того, как я в OVER (ORDER_BY передал два аргумента
Svyatoslav
хотя если передать один тоже ничего не работает если row_number убрать обратно, то все ок
Svyatoslav
Блин
а его разве нет?
Там скоба сразу
Svyatoslav
Блин
где?)
row_number()
Блин
где?)
В тексте, что прислал ты
Svyatoslav
row_number() это функция
Блин
row_number() это функция
На скобку ругается, может не понимает без пробельчика?
Svyatoslav
На скобку ругается, может не понимает без пробельчика?
Я понял. просто пробельчиками управляет sqlalchemy
Svyatoslav
А зачем тебе вообще row_num?
клиент просит сделать нумерацию не глобально, а внутри какого либо события. есть таблица событий -> есть таблица мастерклассов у мастеркласса есть ид события. и номер мастеркласса должен быть порядковым внутри события
Svyatoslav
так выше ось или тебе весь колстек выгрузить?
Svyatoslav
Всегда же можно просто сделать обычный ордер и enumerate потом в питоне
питон не получает все сразу, только постранично. а есть выбирать все элементы и прикреплять к ним индекс питоном, то ... кажется это не самое лучшее решение.
Svyatoslav
Фишка в том что row_number() сам по себе работает Да и на офф доках вот
Mikhail
ребят, просто напишите направление , на котором вы учитесь в универе или должность на работе . вам 5/8 секунд потраченных , а для меня уяснение , где я смогу работать и где такие же ребята , как я
Tishka17
Оффсет именно это и делает
Mikhail
я , допустим , поступил на безопасность информационных технологий в органах
Svyatoslav
обрати внимание откуда начинается нумерация
Anonymous
Привет всем!
Tishka17
обрати внимание откуда начинается нумерация
В смысле, оффсет приводит к тому, что у тебя база выгребает все записи, а потом отрезает перед отдачей тебе
Mikhail
УФА
Tishka17
УФА
Фирт?
Mikhail
БашГУ - БИТ
Anonymous
А почему в органах?
Tishka17
ну да, меня получать с базы больше и не надо
Ну вообще странные требования клиента.
Anonymous
Ребят, какой факультет выбрать? 1) прикладная информатика 2) информационные системы и программирование
Mikhail
потому что полное БИТ в правоохранительных органах - специалитет
Svyatoslav
Ну вообще странные требования клиента.
чем бы дитя не тешилось лишь бы платило
Svyatoslav
Ну вообще странные требования клиента.
index = column_property(func.row_number().over(order_by=EventDay.date)) Мне кажется так удобнее будет выбирать элемент. Сразу можно WHERE index = 5
Anonymous
Скорее всего на прикладной информатике будет больше матеши
Mikhail
потому что в Уфе универ , не тупи)
Mikhail
лучше напиши , где сам учишься
Anonymous
А ты точно товарищ майор?
Блин
Блин
@Tishka17 Смотри. SQLAlchemy использует 3.21.0 а консоль 3.25.0... хммм
Хех. А ты прав. Список обновлений: 2018-09-15 (3.25.0) Add support for window functions Window Functions : A window function is a special SQL function where the input values are taken from a "window" of one or more rows in the results set of a SELECT statement. SQLite supports the following 11 built-in window functions: row_number() The number of the row within the current partition. Rows are numbered starting from 1 in the order defined by the ORDER BY clause in the window definition, or in arbitrary order otherwise.
Блин
Виндов функтионз в 3.25.0 и ввели...
Алексей
У меня не устанавливаеться библиотека,помогите)
Алексей
Библиотека через pip не устанавливаеться
Taijef
Если можно скрин
Алексей
Я исправил ошибку, спасибо
Svyatoslav
Хех. А ты прав. Список обновлений: 2018-09-15 (3.25.0) Add support for window functions Window Functions : A window function is a special SQL function where the input values are taken from a "window" of one or more rows in the results set of a SELECT statement. SQLite supports the following 11 built-in window functions: row_number() The number of the row within the current partition. Rows are numbered starting from 1 in the order defined by the ORDER BY clause in the window definition, or in arbitrary order otherwise.
Слушай, вот я сейчас обновил питон до 3.7.4, в надежде что там норм sqlite будет. но теперь окружение pipenv не пересобирается. Сначала он как обычно ругнулся на то что версия питона в окружении устарела, предложил pipenv —rm. Готово. Теперь pipenv install вечно висит, создает 100500 процессов python.exe пока не наберет 25гб озу. #шоделать
Svyatoslav
Svyatoslav
Ух
хех, надо было просто перед установкой 3,7,4 удалить 3,7,3 ...
Anonymous
Из пипенва?
Anonymous
Удолить
Anonymous
Или из системы
Svyatoslav
Anonymous
Сурово
Svyatoslav
в общем проблема с блядским row_number() решена. расходимся...)))
Anonymous
Это питон в Intellij Idea??
Svyatoslav
Как?
Обновил питон 3.7.3 -> 3.7.4
Svyatoslav
Это питон в Intellij Idea??
Насколько я понимаю это не питон. У идеи есть своя либа для sqlite
Svyatoslav
А если ты про проект, то да, питон в идее.
Блин
хех, надо было просто перед установкой 3,7,4 удалить 3,7,3 ...
Хотел тебе об этом сказать, но думал, ты и так это сделал))