Size: a a a

pgsql – PostgreSQL

2021 January 11

YS

Yaroslav Schekin in pgsql – PostgreSQL
Evgeniy Grygoriev
банальная задача есть id номер, для каждой записи в таблицу, таблица партицированная. Необходимо чтоб id был уникальным.
Какая-то странная структура, на первый взгляд (я к тому, что таблицы с несколькими уникальными индексами не так часто встречаются; а те, где они бывают, обычно слишком малы и партиционировать их не нужно).
Что хранится в этой таблице?
источник

EG

Evgeniy Grygoriev in pgsql – PostgreSQL
CREATE TABLE my_table (
   id bigserial not null,
   created_at timestamp not null,
   updated_at timestamp not null,
   status integer not null,
   primary key (id, created_at),
   unique (id, created_at)
) PARTITION BY RANGE (created_at);

Вот тренировочная таблица.
источник

EG

Evgeniy Grygoriev in pgsql – PostgreSQL
задача чтоб id был уникальный по всем партциям
источник

ГП

Глеб Пономарев... in pgsql – PostgreSQL
Народ привет, помогите с sql запросом, есть таблица goods и есть столбец brand, как взять все товары кроме тех у которых в столбце brand есть русские буквы
источник

YS

Yaroslav Schekin in pgsql – PostgreSQL
Evgeniy Grygoriev
CREATE TABLE my_table (
   id bigserial not null,
   created_at timestamp not null,
   updated_at timestamp not null,
   status integer not null,
   primary key (id, created_at),
   unique (id, created_at)
) PARTITION BY RANGE (created_at);

Вот тренировочная таблица.
Я же спрашиваю не о тренировочных таблицах, а о том, зачем это на самом деле нужно.
Т.е. что там хранится, в my_table (документы, пользователи, проводки)?
источник

EG

Evgeniy Grygoriev in pgsql – PostgreSQL
документы
источник

RL

Roman Lukianov in pgsql – PostgreSQL
Глеб Пономарев
Народ привет, помогите с sql запросом, есть таблица goods и есть столбец brand, как взять все товары кроме тех у которых в столбце brand есть русские буквы
источник

YS

Yaroslav Schekin in pgsql – PostgreSQL
Evgeniy Grygoriev
документы
Ну так и партиционировать их по id (если это вообще на самом деле нужно, что как-то сомнительно ;) ).
источник

EG

Evgeniy Grygoriev in pgsql – PostgreSQL
Yaroslav Schekin
Ну так и партиционировать их по id (если это вообще на самом деле нужно, что как-то сомнительно ;) ).
А если поставить задачу так, как она поставлена выше. Нужен уникальный id при партцировании по дате.
источник

ГП

Глеб Пономарев... in pgsql – PostgreSQL
если не сложно можете корректно написать для sql такое правило 0-9 a-z A-Z
источник

YS

Yaroslav Schekin in pgsql – PostgreSQL
Evgeniy Grygoriev
А если поставить задачу так, как она поставлена выше. Нужен уникальный id при партцировании по дате.
Значит, Вы её [полноценно] не решите (ответили же уже). ;)
И, кстати, в ближайшее время в PostgreSQL этого не ждите (выше тоже объясняли, почему).
источник

ДТ

Дмитрий Тремасов... in pgsql – PostgreSQL
Глеб Пономарев
Народ привет, помогите с sql запросом, есть таблица goods и есть столбец brand, как взять все товары кроме тех у которых в столбце brand есть русские буквы
select * from goods where brand ~ '([a-z])';
источник

RL

Roman Lukianov in pgsql – PostgreSQL
Глеб Пономарев
если не сложно можете корректно написать для sql такое правило 0-9 a-z A-Z
если там только латиница и цифры то

where brand similar to '[A-Za-z0-9]*'
источник

ГП

Глеб Пономарев... in pgsql – PostgreSQL
Roman Lukianov
если там только латиница и цифры то

where brand similar to '[A-Za-z0-9]*'
Спасибо
источник

ГП

Глеб Пономарев... in pgsql – PostgreSQL
Дмитрий Тремасов
select * from goods where brand ~ '([a-z])';
Спасибо
источник

ГП

Глеб Пономарев... in pgsql – PostgreSQL
Roman Lukianov
если там только латиница и цифры то

where brand similar to '[A-Za-z0-9]*'
Странно, но ничего не находит. Пользуюсь sqlite
SELECT * FROM goods WHERE status == 'fake' and copy == 0 and brand LIKE '[A-Za-z0-9]'
источник

D

Dmitriy in pgsql – PostgreSQL
Глеб Пономарев
Странно, но ничего не находит. Пользуюсь sqlite
SELECT * FROM goods WHERE status == 'fake' and copy == 0 and brand LIKE '[A-Za-z0-9]'
Доку точно читал? https://www.sqlite.org/lang_expr.html#regexp
источник

ГП

Глеб Пономарев... in pgsql – PostgreSQL
Да, только что вспомнил про regexp)
источник

D

Dmitriy in pgsql – PostgreSQL
И при чём тут, кстати, sqlite, если тут PostgreSQL-чат...
источник

RL

Roman Lukianov in pgsql – PostgreSQL
Глеб Пономарев
Странно, но ничего не находит. Пользуюсь sqlite
SELECT * FROM goods WHERE status == 'fake' and copy == 0 and brand LIKE '[A-Za-z0-9]'
так это пример для постгри, Вы сразу не уточнили и в моем примере не like а similar to.
источник