Witam,
Mam problem z pytaniem do bazy, mianowicie:
Mam dwie tabele: zdarzenia i zdarzenia_opis. Do tabeli zdarzenia wpisywane są logi z pracy urządzenia, tabela wygląda następująco (prezentuje tylko kilka wpisów z kilku tysiecy):
Whenl; Type; Code;
2010-07-05 09:12:30; A; 82-02-00;
2010-09-23 13:35:04; A; 37-20-00;
Do tabeli zdarzenia_opis wpisałem opis tych zdarzen:
Type; Code; Text;
A; 82-00-00; Opis błędu 82-00-00;
A; 82-01-00; Opis błędu 82-01-00;
A; 82-02-00; Opis błędu 82-02-00;
A; 82-03-00; Opis błędu 82-03-00;
A; 37; Opis błędu 37-xx-xx
Do bazy zadaje pytanie:
SELECT a.Whenl, a.Code, b.Text FROM zdarzenia a, zdarzenia_opis b where (a.Type = b.Type) and (b.Code = (a.Code+'*'))
Otrzymuje wynik:
2010-07-05 09:12:30; A; 82-00-00; Opis błędu 82-00-00;
2010-07-05 09:12:30; A; 82-00-00; Opis błędu 82-01-00;
2010-07-05 09:12:30; A; 82-00-00; Opis błędu 82-02-00;
2010-07-05 09:12:30; A; 82-00-00; Opis błędu 82-03-00;
2010-09-23 13:35:04; A; 37-20-00; Opis błędu 37-xx-xx
W tabeli zdarzenia_opis błąd 37 składa się tylko z dwóch cyfr ponieważ reszta to parametry tego błędu.
Jak zadać to pytanie żeby dla błędu 82-00-00 znajdował się tylko prawidłowy opis a jednocześnie znajdował się opis dla błędu 37. Kombinowałem różnymi sposobami z like itp. Ale nigdy to nie działało tak jak powinno.
Może ktoś potrafi mi pomóc, jeżeli coś nie jasno opisałem proszę napisać a postaram się wyjaśnić.
Pozdrawiam i z góry dziękuje