Ilya
потрясающие познания в SQL
:( ну перепутал с кем не бывает Зато теперь запомнил Мне вот надо max(Val) получиться для каждой строки одним запросом Вот это думаю даже с потрясающим знанием будет не просто Могу описать подробнее
Tigran
попробуй всё-таки поботать SQL вместо того, чтобы хуячить
Nikita
короч, я понял юзать TEXT, а там split и еже с ними
Amaro
нет, формат записи такой: selected_recor_id | array_of_ids_table1 | array_of_ids_table2
Мне кажется, в таблицах один и два просто должен оказаться форинкей на эту. Но при чем тут питон?
Артем
короч, я понял юзать TEXT, а там split и еже с ними
так стоит делать только если ты никогда не будешь запросы к БД делать на конкретное поле в массиве. И даже тогда вариант не очень
Илья
Ребятки, привет! Кто имел дело с bottle и сервисом heroku? Я начинающий. Пытаюсь поднять бота на вебхуках, но вначале хотя бы хелло веб сервер разместить. Вроде с грехом попалам запускается, но 404 даёт. Хотя маршруты есть. Что не так?
Илья
лог
Slam!
Про $PORT в частности
Slam!
Покажи код
Илья
типа такого сделал
Илья
пишет же в логе что поднялся
Ilya
Звучит как будто тебе предстоит познать GROUP BY
Почитал про GROUP BY Не совсем то У меня ситуацияя такая я делаю селект с условием where ulk = 'sess-rxg' or ulk = 'sess-rxl'or ulk = 'sess-rxu' and time > '2019-04-01T00:00:00Z' and time < '2019-05-01T00:00:00Z' Т.е. я выбираю эти параметры за месяц, все ок, они выдаются, только мне надо получить максимальное значение кажнодо параметра за месяц для одного я могу сделать так select *, max(value) from measurement where ulk = 'sess-rxg' and time > '2019-04-01T00:00:00Z' and time < '2019-05-01T00:00:00Z'
Илья
и ответ даёт
Tishka17
а
Илья
Покажи код
web: python ./hellobottle.py $PORT это procfile
Ilya
ничем, я писал выше, что вопрос не по теме Просто может есть народ кто с influx работает
Илья
Покажи код
import os from bottle import Bottle, run from sys import argv app = Bottle() @app.get('/') def home(): return 'Hello!' @app.route('/hello') def hello(): return "Hello World!" run(host='0.0.0.0', port=argv[1]) #run(host="0.0.0.0", port=int(os.environ.get("PORT", 5000)))
Ilya
select ulk, max(value) from measurements where time > '2019-04-01T00:00:00Z' and time < '2019-05-01T00:00:00Z' group by ulk
сейчас проверю, но тут явно не то, так как выдаст все что отнисится к ulk, а мне надо только определенное А не, вообще только максимальное значение
Artyem
хотя конечно может это осознанно и в случае sess-rxg и sess-rxl ограничения по дате не нужны
Alex
и еще момент в InfluxDB что нет оператора IN?
Ilya
и еще момент в InfluxDB что нет оператора IN?
думаю есть, он тип sql подобный\
Ilya
давай пример
сек Кину и ouput
Alex
выбиратеся, то что нрадо :) без макс все вылдает как надо
да ну… может быть у тебя нет данных не входящих в этот диапазон?
Alex
@Saluev тут не только SQL ботать а и основы булевой алгебры.
Tishka17
я вот не понимаю, что он хочет
Artyem
выбиратеся, то что нрадо :) без макс все вылдает как надо
тоесть то что у тебя будут данные вне указанного диапазона дат это нормально?
Alex
ты его понял?
нет, но с большой вероятностью его условие выборки некорректное.
Tishka17
нет, но с большой вероятностью его условие выборки некорректное.
с большой вероятностью он вообще хуйню делает
Ilya
я вот не понимаю, что он хочет
Сейчас поптараюсь подробнее описать ВОт селект за месяц select * from measurement where time > '2019-04-01T00:00:00Z' and time < '2019-05-01T00:00:00Z' limit 10 ВОТ output {'time': '2019-04-01T00:00:32Z', 'ulk': None, 'python': 'PARAM_NAME', 'value': 475823} {'time': '2019-04-01T00:00:32Z', 'ulk': None, 'python': 'PARAM_NAME', 'value': 118488} {'time': '2019-04-01T00:00:32Z', 'ulk': None, 'python': 'PARAM_NAME', 'value': 581599} {'time': '2019-04-01T00:00:32Z', 'ulk': None, 'python': 'PARAM_NAME', 'value': 475517} {'time': '2019-04-01T00:00:32Z', 'ulk': None, 'python': 'PARAM_NAME', 'value': 463111} {'time': '2019-04-01T00:05:00Z', 'ulk': 'sess-rx', 'python': None, 'value': 2852337571525522} {'time': '2019-04-01T00:05:00Z', 'ulk': 'sess-rxg', 'python': None, 'value': 11076410374980} {'time': '2019-04-01T00:05:00Z', 'ulk': 'sess-rxl', 'python': None, 'value': 3863454161979493} {'time': '2019-04-01T00:05:00Z', 'ulk': 'sess-rxu', 'python': None, 'value': 842330720414105} {'time': '2019-04-01T00:05:00Z', 'ulk': 'sess-total-sessg', 'python': None, 'value': 12120} Мне надо только sess-rx и тд которые я перечислю, но не все а только максимальные их value
Alex
+ max + group by
Tishka17
Сейчас поптараюсь подробнее описать ВОт селект за месяц select * from measurement where time > '2019-04-01T00:00:00Z' and time < '2019-05-01T00:00:00Z' limit 10 ВОТ output {'time': '2019-04-01T00:00:32Z', 'ulk': None, 'python': 'PARAM_NAME', 'value': 475823} {'time': '2019-04-01T00:00:32Z', 'ulk': None, 'python': 'PARAM_NAME', 'value': 118488} {'time': '2019-04-01T00:00:32Z', 'ulk': None, 'python': 'PARAM_NAME', 'value': 581599} {'time': '2019-04-01T00:00:32Z', 'ulk': None, 'python': 'PARAM_NAME', 'value': 475517} {'time': '2019-04-01T00:00:32Z', 'ulk': None, 'python': 'PARAM_NAME', 'value': 463111} {'time': '2019-04-01T00:05:00Z', 'ulk': 'sess-rx', 'python': None, 'value': 2852337571525522} {'time': '2019-04-01T00:05:00Z', 'ulk': 'sess-rxg', 'python': None, 'value': 11076410374980} {'time': '2019-04-01T00:05:00Z', 'ulk': 'sess-rxl', 'python': None, 'value': 3863454161979493} {'time': '2019-04-01T00:05:00Z', 'ulk': 'sess-rxu', 'python': None, 'value': 842330720414105} {'time': '2019-04-01T00:05:00Z', 'ulk': 'sess-total-sessg', 'python': None, 'value': 12120} Мне надо только sess-rx и тд которые я перечислю, но не все а только максимальные их value
SELECT ulk, max(value) FROM measurements WHERE time > '2019-04-01T00:00:00Z' AND time < '2019-05-01T00:00:00Z' AND ulk IN ('sess-rxg' , 'sess-rxl') GROUP BY ulk
Alex
SELECT ulk, max(value) FROM measurements WHERE time > '2019-04-01T00:00:00Z' AND time < '2019-05-01T00:00:00Z' AND ulk IN ('sess-rxg' , 'sess-rxl') GROUP BY ulk
удивительно что он не смог из отдельно взятых правильных советов составить целостное решение.
Ilya
и еще момент в InfluxDB что нет оператора IN?
есть кое что интересное, разбираюсь "error":"error parsing query: found IN, expected ; at line 4, Возможно он не поддерживается
Alex
InfluxDB похоже не умеет IN оператор
Alex
https://github.com/influxdata/influxdb/issues/2157
Tishka17
ну тогда OR как был
Alex
Только скобки не забудь
Alex
И изучи уже основы булевой алгебры.
Ilya
InfluxDB похоже не умеет IN оператор
о вы уже написали, я тоже нагуглил сейчас буду пробовать с or
Amaro
Ровно в полночь твои скобки превратятся...
Ilya
по ходу что-то вырисовывается, сейчас проверю и да надо быть аккуратнее с ними (())()()()
Андрей
Спрошу тут ещё в env.py делаю такие импорты from ..app.models import * from ..app import db в терминале выполняю alembic upgrade head На выходе получаю from ..app import db ImportError: attempted relative import with no known parent package Структура проекта пикрилэйтед
Dmytro
Три точки а не две
Dmytro
Не?
Ilya
FYI A OR B OR C AND D AND E работает не так же как (A OR B OR C) AND D AND E
1 курс арифметических и логических основ вычислетельной тезхники
Андрей
app на 2 уровня выше, разве нет?
from ...app.models import * ImportError: attempted relative import with no known parent package
Dmytro
А, нет, две точки таки
Alex
ошибку блин прочитай
Dmytro
ошибку блин прочитай
Кому нужно читать код ошибки?
Dmytro
Он бесполезен по мнению некоторых
Евгений
Alex
вообще первая проблема - это структура проекта
Евгений
путь напиши из которого происходит вызов.
из release или из какой то другой папки вызов делаешь?
Евгений
вообще первая проблема - это структура проекта
+ Рекомендую куда нибудь migrations перенести, например в проект 😊
Андрей