mirko_anonim
✨ Obserwuj #mirkoanonim
#programowanie #naukaprogramowania #postgresql

Hej. W jaki sposób w sql można sprawdzić, czy tablica A, która jest polem encji i w tabeli, zawiera przynajmniej jeden element z tablicy B?

czyli np. mam

CREATE TABLE profile( coupons coupon[] NOT NULL);

i teraz muszę ułożyć query, które zwróci wszystkie profile, które w tablicy mają co najmniej jeden element wspólny z tablicą porównawczą (zostanie przekazana jako argument w metodzie repozytorium)

─────────────────────

· Akcje: Odpowiedz anonimowo · Więcej szczegółów
· Zaakceptował: Nighthuntero
· Autor wpisu pozostał anonimowy dzięki Mirko Anonim

  • Najlepsze
  • Wszystkie komentarze
T.....k
T.....k
@mirko_anonim: Nie do końca wiem, co to za dialekt SQL zwłaszcza w połączeniu z własnym datatype, ale poczytaj o JOINach, powinny zrobić to co chcesz.
programista15cm
@mirko_anonim: tabela z polem typu tablica jednowymiarowa jakichś obiektów? Nie wygląda to dobrze. Nie wygląda jakby było sens to trzymać w relacyjnej bazie danych

Ale ogólnie robisz inner joina
MajsterOfWihajster
@Nighthuntero @digitallord usuńcie to na boga
Krolik
Krolik
@programista15cm: co jest złego w polu typu tablicowego? Jakby to było złe to programista inaczej by Postgresa stworzył.

Do OPa - zainteresuj się operatorami UNNEST i ANY.
programista15cm
@Krolik: pewnie dlatego, że tablica i plik są linowymi strukturami danych i ni chuya nie pasują do relacyjnej bazy danych. To sa dwie zupełnie różne koncepcje danych ze swoimi zaletami i wadami. Tablica w bazie danych nie ma żadnych zalet tablicy (bo jest inaczej przechowywana) i będzie mieć skumulowane wszystkie wady db

Postgres wszystko potrafi - tym gorzej dla architekta debila XD
Krolik
Krolik
@programista15cm: sam sobie przeczysz:

pewnie dlatego, że tablica i plik są linowymi strukturami danych i ni chuya nie pasują do relacyjnej bazy danych

To sa dwie zupełnie różne koncepcje danych ze swoimi zaletami i wadami.


Tablica w relacyjnej bazie danych ma pewne zalety i ma też pewne wady, i naprawdę projektanci Postgresa to nie
programista15cm
@Krolik: jak masz dane zamodelowane relacyjnie to brak złączeń jest zaletą?

Jak w tej tablicy są elementy słowników to zajebiście sie takie db skompresuje XDDDD po prostu pomieszanie dwóch koncepcji. Jakbys motocykl z samochodem chciał ożenić na siłę
Krolik
Krolik
Krolik
  • adult
0
Treść przeznaczona dla osób powyżej 18 roku życia...
programista15cm
@Krolik: no jest to jakas mysl, chociaz musisz potem po tej tablicy iterowac, walidowac...

Imho lepiej zrobic dwa pola primarytelno, secondarytelno ... i dump z reszta numerow.

Inaczej ciezko to bedzie dalej przetwarzac, a majac taka baze predzej czy pozniej bedzies ja migrowal, budowal na niej raporty itp
lezaloby
Krolik
Krolik
Inaczej ciezko to bedzie dalej przetwarzac

@programista15cm: co ciężko przetwarzać? Przecież po stronie aplikacj i tak w jednym i drugim przypadku będziesz mieć to zamapowane na jakąś listę

A pracowales kiedys w zyciu z bazami danych w firmach czy tylko na uczelni?

Głównie w firmach.
programista15cm
@Krolik: ale aplikacja jest jedynym odbiorca tej struktury?

nie czaje po prostu po co te listy robic na sile zamiast bezposrednio do zmiennej sie odnosic.
Albo ladowac obiekty bezposrednio z rekordow