|
1 |
| -CREATE TABLE IF NOT EXISTS "public"."segmentActivityChannels" ( |
2 |
| - "id" UUID PRIMARY KEY DEFAULT uuid_generate_v4(), |
3 |
| - "tenantId" UUID NOT NULL REFERENCES public.tenants(id) ON UPDATE CASCADE ON DELETE CASCADE, |
4 |
| - "segmentId" UUID NOT NULL REFERENCES public.segments(id) ON UPDATE CASCADE ON DELETE CASCADE, |
5 |
| - "platform" TEXT NOT NULL, |
6 |
| - "channel" TEXT NOT NULL |
| 1 | +create table if not exists "public"."segmentActivityChannels" ( |
| 2 | + "id" uuid primary key default uuid_generate_v4(), |
| 3 | + "tenantId" uuid not null references public.tenants (id) on update cascade on delete cascade, |
| 4 | + "segmentId" uuid not null references public.segments (id) on update cascade on delete cascade, |
| 5 | + "platform" text not null, |
| 6 | + "channel" text not null |
7 | 7 | );
|
8 | 8 |
|
9 |
| -CREATE UNIQUE INDEX unique_segment_activity_channel |
10 |
| - ON "public"."segmentActivityChannels" ("tenantId", "segmentId", "platform", "channel"); |
| 9 | +create unique index unique_segment_activity_channel |
| 10 | + on "public"."segmentActivityChannels" ("tenantId", "segmentId", "platform", "channel"); |
11 | 11 |
|
12 |
| -INSERT INTO "public"."segmentActivityChannels" ("segmentId", "tenantId", "platform", "channel") |
13 |
| - SELECT |
14 |
| - "id", |
15 |
| - "tenantId", |
16 |
| - jsonb_object_keys("activityChannels"), |
17 |
| - TRIM('"' FROM jsonb_array_elements("activityChannels"->jsonb_object_keys("activityChannels"))::TEXT) |
18 |
| - FROM "public"."segments"; |
| 12 | +insert into "public"."segmentActivityChannels" ("segmentId", "tenantId", "platform", "channel") |
| 13 | +select "id", |
| 14 | + "tenantId", |
| 15 | + jsonb_object_keys("activityChannels"), |
| 16 | + trim('"' from jsonb_array_elements("activityChannels" -> jsonb_object_keys("activityChannels"))::text) |
| 17 | +from "public"."segments" |
| 18 | +on conflict do nothing; |
0 commit comments