czwartek, 31 maja 2012

Iloczyn kartezjański w praktycznym przykładzie

Prosty przykład wykorzystania iloczynu kartezjańskiego do uzyskania wszystkich możliwych kombinacji ze zbioru danych.

Iloczyn kartezjański przydaje się w sytuacji gdy mamy kilka pozycji w słowniku i chcielibyśmy uzyskać wszystkie możliwe kombinacje w postaci np. kwerendy. Takim prostym a zarazem wdzięcznym przykładem będzie generator wypowiedzi naszego znanego polityka Stefana Niesiołowskiego stworzony na podstawie tego zestawienia:

Przykładowa baza danych zawierająca gotowe rozwiązanie znajduje się tutaj
Dla nieposiadających Accessa 2010 proponuję przejrzeć wynik tutaj

Kod SQL kwerendy zaś wygląda tak:
SELECT Fraza
FROM (SELECT F1.fraza_01 + ' ' + F2.fraza_02 + ' ' + F3.fraza_03 + ' ' + F4.fraza_04 as Fraza
        , Rnd(F1.id + F2.id + F3.id + F4.id) AS poz
    from tab_frazy as F1, tab_frazy as F2, tab_frazy as F3, tab_frazy as F4
)  AS F
ORDER BY poz DESC;

1 komentarz:

  1. Moim zdaniem aktualnie najbardziej ważna w motoryzacji jest ekonomiczność danego samochodu. Producenci prześcigają się w nowinkach technologicznych często zapominająć o redukcji spalania auta, a potem celowo fałszują wyniki spalania. Przykładem dość głośnym był w ostatnich latach Volkswagen. Pozdrawiam serdecznie :-)

    OdpowiedzUsuń