Nowa tabela na podstawie starej, Stworzenie nowej tabeli na podstawie starej |
Nowa tabela na podstawie starej, Stworzenie nowej tabeli na podstawie starej |
26.03.2013, 15:06:35
Post
#1
|
|
Grupa: Zarejestrowani Postów: 10 Pomógł: 0 Dołączył: 11.01.2010 Ostrzeżenie: (0%) |
Cześć, jak się domyślacie potrzebuję pomocy z SQL.
Załóżmy, że mam tabelę "A", która zawiera kolumny "ID", "NUMER_ASORTYMENTU" "DATA_REALIZACJI" oraz "MAGAZYN". W tej tabeli jest kilka set rekordów, w których wartość "NUMER_ASORTYMENTU" czasami się powtarza. Pytanie: Jak utworzyć (czy w ogóle się da) tabelę "B", która będzie zawierać kolumny "ID", "NUMER_ASORTYMENTU", "OST_DATA_REALIZACJI" i "ILOSC_WYSTAPIEN". gdzie "OST_DATA_REALIZACJI" - będzie najnowszą wartością pola "DATA_REALIZACJI" z tabeli A dla danego "NUMER_ASORTYMENTU" "ILOSC_WYSTAPIEN" - będzie ilością wystąpień rekordów o "NUMER_ASORTYMENTU" z tabeli A a w kolumnie "NUMER_ASORTYMENTU" w tabeli B nie będzie pojawiać się jeden asortyment wielokrotnie. Znam podstawowe polecenia ale nie potrafię ich połączyć tak aby dały taki wyniki. Może to trochę lepiej wytłumaczy o co chodzi. Chcę aby nowa tabela zawierała po jednym rekordzie dla każdego asortymentu, który pokaże najnowszą datę z jaką występował on w tabeli A oraz krotność wystąpień w tabeli A czyli ile razy pojawił się w tabeli A rekord, w którym "NUMER_ASORTYMENTU" był taki sam. |
|
|
26.03.2013, 16:16:38
Post
#2
|
|
Grupa: Zarejestrowani Postów: 99 Pomógł: 22 Dołączył: 14.12.2007 Skąd: Wyszków Ostrzeżenie: (0%) |
Kod INSERT INTO B (ID,NUMER_ASORTYMENTU,OST_DATA_REALIZACJI, ILOSC_WYSTAPIEN) SELECT ID, NUMER_ASORTYMENTU, DATA_REALIZACJI, count(NUMER_ASORTYMENTU) FROM A ORDER BY DATA_REALIZACJI desc GROUP BY NUMER_ASORTYMENTU;
|
|
|
26.03.2013, 16:47:44
Post
#3
|
|
Grupa: Zarejestrowani Postów: 10 Pomógł: 0 Dołączył: 11.01.2010 Ostrzeżenie: (0%) |
Niestety dostaje komunikat
SQL Error: ORA-00933: polecenie SQL niepoprawnie zako�czone 00933. 00000 - "SQL command not properly ended" |
|
|
26.03.2013, 20:43:42
Post
#4
|
|
Grupa: Zarejestrowani Postów: 1 421 Pomógł: 310 Dołączył: 18.04.2012 Ostrzeżenie: (0%) |
Jeśli CREATE TABEL nie zadziała to spróbuj dać:
|
|
|
27.03.2013, 09:26:11
Post
#5
|
|
Grupa: Zarejestrowani Postów: 10 Pomógł: 0 Dołączył: 11.01.2010 Ostrzeżenie: (0%) |
Dzięki, jedna i druga opcja działa i dają właściwy efekt. Super:)
|
|
|
Wersja Lo-Fi | Aktualny czas: 26.04.2024 - 10:08 |