Discussion:
kwerenda krzyżowa w Open Office Base
(Wiadomość utworzona zbyt dawno temu. Odpowiedź niemożliwa.)
Grzegorz
2009-02-06 18:49:25 UTC
Permalink
Witam,
muszę wykonać jedną kwerendę w Open Office Base - czy istnieje możliwośc
stworzenia kwerendy krzyżowej?
wiem, że NTG (poszę już mi tego nie pisać, dziękuję)zadałem to pytanie
grupowiczom na alt.pl.openoffice - wszyscy milczą.
Pozdrawiam,
Grzegorz.
Krzysztof Naworyta
2009-02-07 18:10:43 UTC
Permalink
Juzer Grzegorz <***@toya.net.pl> napisał

| muszę wykonać jedną kwerendę w Open Office Base - czy istnieje możliwośc
| stworzenia kwerendy krzyżowej?
| wiem, że NTG (poszę już mi tego nie pisać, dziękuję)zadałem to pytanie
| grupowiczom na alt.pl.openoffice - wszyscy milczą.

PIVOT to wynalazek access'a (chyba?)

Nawet w MS SQL wprowadzona dopiero od wersji 2005 i to w dość okrojonej
wersji.
(nie wylicza automatycznie nazw kolumn, co wymusza inne rozwiązania:
sklejanie stringów i wywoływanie poprzez exec (@zmienna))

Ale temat jest dość uniwersalny, bo chyba nie ma takiego silnika, gdzie
nie chciano tej funkcjonalności odtworzyć.

Najprostsze, to grupowania warunkowe.

Przykładowo, wiedząc, że zawartość jakiejś kolumny (kolPivot) to "Ala",
"Ola", "Zosia":

Select
kol1
, kol2
, Sum(iif(kolPivot="Ala",kolWartosc,Null)) as "Ala"
, Sum(iif(kolPivot="Ola",kolWartosc,Null)) as "Ola"
, Sum(iif(kolPivot="Zosia",kolWartosc,Null)) as "Zosia"
From
...
Group by
kol1
, kol2

W MS SQL zamiast iif() uzywa się (Case When ... Then ... Else ... End)

Co mozna użyć w OpenOffice - nie wiem.
--
KN

archiwum grupy:
http://groups.google.pl/advanced_group_search
(grupa: pl*msaccess)
Loading...