Size: a a a

pgsql – PostgreSQL

2020 August 10

KK

Konstantin K in pgsql – PostgreSQL
дичь какая-то(
источник

JD

Jim Di in pgsql – PostgreSQL
pgcodekeeper посмотри, он умеет вьюхи перестаивать потом, емнип
источник

KK

Konstantin K in pgsql – PostgreSQL
спасибо
источник

C

Constantin in pgsql – PostgreSQL
Здравствуйте, помогите пожалуйста, не соображу, как написать запрос. Нужно выбрать только те уникальные значения cal, у которых в колонке name есть и значение Москва, и значение Омск. Чет вообще ступор
источник

ДГ

Дмитрий Гаврин... in pgsql – PostgreSQL
SELECT col FROM table WHERE name LIKE 'Москва' OR name LIKE 'Омск' GROUP BY col HAVING count(DISTINCT name) >= 2;
источник

C

Constantin in pgsql – PostgreSQL
Дмитрий Гаврин
SELECT col FROM table WHERE name LIKE 'Москва' OR name LIKE 'Омск' GROUP BY col HAVING count(DISTINCT name) >= 2;
Большое спасибо, работает. Сам не догадался)
источник

М

Максим in pgsql – PostgreSQL
Yaroslav Schekin
И что? Одна и та же роль по умолчанию может установить неограниченное количество соединений с базой одновременно.
Т.е. при чём тут роли?
просто на соединение время надо
источник

АА

Артур Асриян... in pgsql – PostgreSQL
Если две Москвы будет тогда будет ошибка
источник

АЛ

Аггей Лоскутников... in pgsql – PostgreSQL
Constantin
Здравствуйте, помогите пожалуйста, не соображу, как написать запрос. Нужно выбрать только те уникальные значения cal, у которых в колонке name есть и значение Москва, и значение Омск. Чет вообще ступор
Тут же И

Значит id должен быть у обоих городов

select distinct t1.col  from table1 as t1 where name='Москва'
                       inner join (select col from table1 where name='Омск') as t2
                       on t1.col=t2.col

Не проверял
источник

YS

Yaroslav Schekin in pgsql – PostgreSQL
Максим
просто на соединение время надо
Я так и не понял, при чём тут вообще роли...
источник

АЛ

Аггей Лоскутников... in pgsql – PostgreSQL
Максим
просто на соединение время надо
Рецепт давно изобретен - пуллинг соединений
источник

AW

Alexander Walther in pgsql – PostgreSQL
Ребят, а кто-нибудь сталкивался с тем, что peewee подсовывает свой alias в запросе?
источник

AW

Alexander Walther in pgsql – PostgreSQL
Есть такой код:
parent = Event.alias()

query = Event.select(
           Event.id,
           Event.parent_id,
           Event.external_id,
           Event.place_id,
           Event.date,
           Case(
               None,
               [
                   (
                       Event.parent_id.is_null(False),
                       parent.select(
                           parent
                       ).from_(
                           parent.select(
                               parent.id,
                           ).where(
                               parent.id == Event.parent,
                           ),
                       ),
                   ),
               ],
               Event.external_id
           ).alias('origin_event_id'),
           Place.select(
               fn.ROW_TO_JSON(SQL('_place')),
           ).from_(
               Place.select(
                   Place.id,
                   Place.name,
                   Place.extra['preview'].cast('json').alias('preview'),
                   Place.extra['address'].cast('json').alias('map_config'),
                   Place.extra['plan_address'].cast('json').alias('address'),
               ).where(
                   Place.id == Event.place
               ).alias('_place'),
           ).alias('place_info'),
       ).switch(Event).join(
           Place,
           JOIN.LEFT_OUTER,
           on=(Place.id == Event.place),
       ).switch(Event).where(
           Event.date < fn.now(),
       ).order_by(
           Event.date
       ).where(
           Event.landing == self.request.get('land_cfg')['id'],
       ).group_by(
           Event.id,
           Event.parent_id,
           Event.external_id,
           Event.place_id,
           Event.date,
           Place.id
       )
Сгенерированный запрос:
SELECT "t1"."id",
      "t1"."parent_id",
      "t1"."external_id",
      "t1"."place_id",
      "t1"."date",
      CASE
          WHEN ("t1"."parent_id" IS NOT NULL) THEN
                 (SELECT _parent AS "external_id"
                  FROM
                    (SELECT "t2"."id"
                     FROM "event_en" AS "t2"
                     WHERE ("t2"."id" = "t1"."parent_id")) AS "_parent")
AS "t3"
          ELSE "t1"."external_id" AS "external_id"
      END AS "origin_event_id",

 (SELECT ROW_TO_JSON(_place)
  FROM
    (SELECT "t4"."id",
            "t4"."name",
            CAST("t4"."extra"->>'preview' AS JSON) AS "preview",
            CAST("t4"."extra"->>'address' AS JSON) AS "map_config",
            CAST("t4"."extra"->>'plan_address' AS JSON) AS "address"
     FROM "place" AS "t4"
     WHERE ("t4"."id" = "t1"."place_id")) AS "_place") AS "place_info"
FROM "event_en" AS "t1"
LEFT OUTER JOIN "place" AS "t4" ON ("t4"."id" = "t1"."place_id")
WHERE (("t1"."date" < now())
      AND ("t1"."landing_id" = 108))
GROUP BY "t1"."id",
        "t1"."parent_id",
        "t1"."external_id",
        "t1"."place_id",
        "t1"."date",
        "t4"."id"
ORDER BY "t1"."date"
источник

AW

Alexander Walther in pgsql – PostgreSQL
Peewee подсовывает алиас t3, его можно как-то исключить из генерации?
источник

DO

Do c Tor O r` Ry in pgsql – PostgreSQL
Alexander Walther
Peewee подсовывает алиас t3, его можно как-то исключить из генерации?
Это чат не по peewee
источник

М

Максим in pgsql – PostgreSQL
Кто знает asyncpg создаёт много соединений с бд чтобы асинхронно выполнять операции?
источник

М

Максим in pgsql – PostgreSQL
По мере необходимости
источник

DO

Do c Tor O r` Ry in pgsql – PostgreSQL
Максим
Кто знает asyncpg создаёт много соединений с бд чтобы асинхронно выполнять операции?
Один коннект
источник

DO

Do c Tor O r` Ry in pgsql – PostgreSQL
При выполнении запроса коннект берется из пула и используется
источник

М

Максим in pgsql – PostgreSQL
А тогда смысл в asyncpg если он через один Коннект поочередно запросы выполняет
источник