Ответы пользователя по тегу PostgreSQL
  • В чем ошибка при сохранении ltree?

    проблема в знаке "-" он является недопустимым символом, его стоит либо убрать, либо заменить на "_"
    Ответ написан
    Комментировать
  • Почему Postgresql такой медленный?

    По поводу медленного COUNT на всю таблицу вам написали, а вот второй запрос "по нормальному" должен отрабатывать мгновенно, при условии что постгрес правильно настроен.

    Вы случайно не используете настройки по умолчанию (а они там такие чтоб работало даже на калькуляторе)?
    есди да то советую postgresql.leopard.in.ua там какраз новая версия недавно вышла.
    Ответ написан
    1 комментарий
  • Почему не работает Distinct без OrderBy?

    Есть поле A по которому вы делаете distinct, есть поле B по которому вы хотите сделать сортировку после устранения дубликатов.

    Далее есть два варианта:

    - Если DISTINCT ON (A) = DISTINCT ON (A, B), собственно и нет никаких проблем делаете дистинкт по двум полям оба из этих полей можете указать в сортировке.
    - Если DISTINCT ON (A) <> DISTINCT ON (A, B), то происходит что-то странное, какой результат от сортировки вы ожидаете если нет никаких гарантий какое из значений поля B окажется в итоговой выборке?
    Ответ написан
    Комментировать
  • Как привести массив чисел из поля VARCHAR к типу INTEGER в PostgreSQL?

    С этой задачей уже наверно как и посоветовали использовать jsonb.

    А вот для запросов воспользоваться вот этим https://postgrespro.ru/docs/postgrespro/9.5/jsquery - позволит относительно просто делать сложные условия на внутреннюю структуру json, ещё и индексы буду поддерживаться.
    Ответ написан
  • [PostgreSQL] Как привести строки в INT и другие типы данных?

    Выбрать только то, что является числом.
    SELECT field1::integer FROM table1 WHERE field1 ~ E'^\\d+$' AND field1::integer > 3;
    Ответ написан
    1 комментарий
  • Как использовать функциональные индексы Postgres из Django?

    пока только так, в 1,11 будут первые подвижки в эту сторону class based indexes.
    Ответ написан
    1 комментарий
  • Почему медленная выборка в партицированных таблицах Postgresql?

    а у вас индексы по этим полям в дочерних таблицах есть?

    https://www.postgrespro.ru/doc/ddl-inherit.html#DD...
    Возможности наследования серьёзно ограничены тем, что индексы (включая ограничения уникальности) и ограничения внешних ключей относятся только к отдельным таблицам, но не к их потомкам. Это касается обеих сторон ограничений внешних ключей. Таким образом, применительно к нашему примеру:
    Ответ написан
    7 комментариев
  • Как правильно составить запрос?

    SELECT t.*
    FROM __test t
    LEFT JOIN __test t2 ON t.Content_id = t2.Content_id AND t2.Tag_id = 'bb'
    WHERE t.Tag_id = 'aa' AND t2.Tag_id is NULL

    если есть первичные ключи, то t.id = t2.id
    Ответ написан
    Комментировать
  • Чем можно сохранять логи и по возможности просматривать?

    https://getsentry.com/welcome/ - шикарное высокоуровневое решение, но на мой взгляд оно не предназначено для лоигорования сразу всего, чтоб потом решить что нужно, скорее логировать туда ошибки, вами самим определённые события и прочее (предоставляется и как услуга, так и на своём сервере развернуть можно)

    Для более общих случаев возможно стоит глянуть в сторону logstash.
    Ну и познакомится с такой вещью как https://ru.wikipedia.org/wiki/Syslog
    Ответ написан
    Комментировать
  • На что следует обратить внимание, работая с PostgreSQL, если ты ораклист?

    Про разницу между PostgreSQL и Oracle ничего не скажу, но рекомендую к прочтению: postgresql.leopard.in.ua
    Ответ написан
    Комментировать
  • С чего начать разработку Информационной системы?

    хех, сам пишу аналогичные вещи =)
    Начать несомненно с описания самого главного, оборудования.
    Какое оборудование вы хотите хранить?
    ---Составить список моделей, производителей
    какие параметры будут его характеризовать?
    ---Какие различные параметры каких типов.
    И тут надо принять одно из самых главных решений в области хранения параметров, как оно должно быть представлено в БД.
    Если всегда одни и теже параметры, то одна таблица с необходимыми полями, если существуют группы оборудования со своими наборами параметров, и их не много и не будут они расширятся, то отдельные таблички с описанием параметров отдельного типа оборудования. И *барабанная дробь* самый универсальный случай, когда каждая модель может иметь произвольный набор параметров, модели создаются через конструктор, тут опять несколько вариантов, или организовать EAV, или допустим хранить шаблон параметров и сами значения в json (в постгре какраз удобно), или самое сложное но и гибкое, разнесение по отдельным типам в бд разных типов параметров, с кастомным поведением для каждого. - честно говоря реализация последнего вам уже до конца года хватит ^^
    Собственно по каждому типу параметров определится с его особенностями, допустим будут ли у вас адреса, если да, просто текстом будет хранится или из некой базы подтягиваться (ФИАС прикрутить допустим), можно будет выбрать только дом или можно будет привязать оборудование к кварталу или улице, что делать если нет определённого адреса? хранить ли геокординаты?. Если нужны ip адреса, просто это ип, или необходимо указание к какой подсети он относится, связанно собственно с системой учёта ip адресов.
    Какие поля будут уникальными, какие обязательными для заполнения, какие доступными только для чтения, как сообщить пользователю об этих особенностях.

    Ну и там всякие сложности, может ли оборудование иметь топологические отношения. Нужен ли учёт портов (сетевых электрических и тд), влан, клиентов на оборудовании, взаимодействие с самим оборудованием из интерфейса системы, продолжать можно очень долго, и большинство из этого вам не нужно ^^

    Вопрос на чём вы хотите сосредоточится?
    Если хотите разобраться с Вёрсткой, не используйте готовые фреймворки, почитайте про БЭМ, попробуйте less или sass, реализуйте хоть страшный но свой интерфейс, протестируйте в разных браузерах. Потом натяните нормальный css фреймворк, попробуйте кастомизировать под себя.
    Неплохой задачкой было бы построение RESTapi для вашего сервиса, с версионностью, поддержкой метода INFO... И взяв хороший js фремворк, организовать общение страницы и сервера именно через апи.
    К гиту лучше всего привыкать сразу, и желательно поробовать работать используя такой подход habrahabr.ru/post/106912
    БД само собой делать в 3-й нормализованной форме, контролируйте сколько и каких запросов бд, разберитесь с EXPLAIN и как работают составные индексы, да и собственно различные виды индексов в постгре, и да попробуйте использовать ОРМ(с фласком видимо прямая дорого к sqlalchemy).

    з.ы. извиняюсь за сумбур =)
    Ответ написан
    3 комментария