wyświetlenie grupy głównej z drzewa
Aga - 11-05-2007 12:31
wyświetlenie grupy głównej z drzewa
Witam,
Mam 3 tabele i musze wyświetlić główną grupę danego towaru. Wyświetlam wszystkie do jakich należy, a głównego nie daję rady ;/
Tabele (ms sql 2005) są takie: transakcje (twr_numer) grupy(nazwa,idnumer,idtyp) grupydom(idnumer,ronumer,idtyp)
i teraz w grupy i grupydom równe są sobie kolumny idnumer, idtyp. Ronumer to idnumer rodzica. Transakcje i grupy łączą się po idnumer i twr_numer. idtyp jest ujemny jeśli to grupa a dodatni jeśli towar.
Czyli mam np (transakcja, nazwa, ronumer, grupa)
123 abc 1 * 123 abc 11 (tu ronumer to 1) 123 abc 112 (tu ronumer to 11) 123 ddd 2 * 123 ddd 22 (ronumer 2)
i chcę wyświetlić tylko to oznaczone *.
Z góry dzięki za pomoc, Aga
-- Wysłano z serwisu OnetNiusy: http://niusy.onet.pl
Grzesiek G. - 11-05-2007 12:31
Aga napisał(a): > Witam, > > Mam 3 tabele i musze wyświetlić główną grupę danego towaru. Wyświetlam wszystkie > do jakich należy, a głównego nie daję rady ;/ > > Tabele (ms sql 2005) są takie: > transakcje (twr_numer) > grupy(nazwa,idnumer,idtyp) > grupydom(idnumer,ronumer,idtyp) > > i teraz w grupy i grupydom równe są sobie kolumny idnumer, idtyp. Ronumer to > idnumer rodzica. Transakcje i grupy łączą się po idnumer i twr_numer. idtyp jest > ujemny jeśli to grupa a dodatni jeśli towar. > > Czyli mam np (transakcja, nazwa, ronumer, grupa) > > 123 abc 1 * > 123 abc 11 (tu ronumer to 1) > 123 abc 112 (tu ronumer to 11) > 123 ddd 2 * > 123 ddd 22 (ronumer 2) > > i chcę wyświetlić tylko to oznaczone *. > > Z góry dzięki za pomoc, > Aga >
WHERE LEN(RTRIM(ronumer)) = 1
Ten RTRIM nie będzie potrzebny jeśli nie będzie spacji z prawej strony ronumer.
Pozdrawiam
-- Grzesiek G. Odpowiadając usuń spamerom_nie z adresu
Aga - 11-05-2007 12:31
> WHERE LEN(RTRIM(ronumer)) = 1 > > Ten RTRIM nie będzie potrzebny jeśli nie będzie spacji z prawej strony > ronumer.
Może niezbyt dokładnie opisałam problem. Gdyby to było takie proste i grupa główna była jednocyfrowa to świat byłby piękny :) W rzeczywistości może to wyglądać różnie i nie ma zasady jaki nr grupy ma grupa główna, a jakie mają grupy podrzędne. Jest natomiast zasada że grupa główna ma najmniejszy numer (czyli min ze wszystkich grup do jakich należy towar). Tak, więc problem dalej pozostaje nierozwiązany. Udało mi się wyświetlić towary i nr grup głównych, ale nie dam rady dołączyć do tego nazwy grupy ;/ Może wklejony select coś pomoże?
SELECT DISTINCT TOP (100) PERCENT Grupy.IDNumer, Grupy.Nazwa, Grupy.RONumer FROM Grupy INNER JOIN Grupy AS Grupy_2 ON Grupy.IDTyp = Grupy_2.IDTyp WHERE (Grupy.IDTyp = 16) AND (Grupy.RONumer IN (SELECT MIN(RONumer) AS Expr1 FROM Grupy AS Grupy_1 GROUP BY IDNumer)) ORDER BY Grupy.IDNumer
zapytanie zwraca coś w stylu (id, nazwa, numer grupy głównej)
123 abc 1 234 dfg 6 374 ega 87 192 ueuej 976
Narazie nie wnikam w pełnego selecta, którego muszę uzyskać, tylko w ten problem o którym pisałam. Wyświetlenie grupy głównej (w tabeli grupy również do każdego idnumer jest przypisany ronumer grupy nadrzędnej).
Pozdrawiam, Aga
-- Wysłano z serwisu OnetNiusy: http://niusy.onet.pl
zanotowane.pldoc.pisz.plpdf.pisz.pleffulla.pev.pl
|
mysql / drzewa / produkty jak to =?ISO-8859-2?Q?zrobi=E6_jedny?==?ISO-8859-2?Q?m_zapytaniem=3F?=
Re: [MySQL] wyswietlenie NIPu jako ciąg cyfr bez spacji i myślników
Jak wyswietlic dane z dwoch tabel gdy dla jednej z nich jest brak jest danej wartosci
[MS SQL] Zapytanie wyswietlajace (lub nie) adresy na podstawie warunku
[MSSQL] edycja rekodu w tabeli i wyswietlanie danych
BDGrid + Postgresql i wyswietlenie 100000 rekordow - problem
[MS SQL] Wyswietlanie fragmentu komorki tekstowej
[Firebird] Łączenie dwóch tabel i wyświetlenie różnicy
skrypt wyswietlajacy pomniejszony obrazek w gd
W czym wyswietlac schemat bazy danych ORACLA
zanotowane.pldoc.pisz.plpdf.pisz.plwawa19wwa91.pev.pl
Cytat
Decede mihi sole - nie zasłaniaj mi słonca. Gdy kogoś kochasz, jesteś jak stworzyciel świata - na cokolwiek spojrzysz, nabiera to kształtu, wypełnia się barwą, światłem. Powietrze przytula się do ciebie, choćby był mróz, a ty masz w sobie tyle radości, że musisz ją rozdawać wokoło, bo się w tobie nie mieści Hoc fac - tak czyń. A tergo - od tyłu; z tyłu. I czarne włosy posiwieją. Safona |
|