Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Laczenie tabel [problem]
Matrix15
post 26.05.2015, 11:07:32
Post #1





Grupa: Zarejestrowani
Postów: 2
Pomógł: 0
Dołączył: 26.05.2015

Ostrzeżenie: (0%)
-----


Witam, mam problem z polaczeniem tabel a mianowicie mam 3 tabele:
lekarze, placowki,oddzialy_nfz.

Mam za zadanie polaczyc 3 tabele.
Stworzylem zapytanie:
Kod
select
lekarze.nr_pesel_lekarza as "Ordynator_placowki",
placowki.nazwa_placowki,
oddzial_nfz.region_oddzialu
from lekarze
join placowki on nr_pesel_lekarza = nazwa_placowki
join oddzial_nfz on region_oddzialu = nr_pesel_lekarza

Tabele wygladaja nastepujaco:
Kod
CREATE TABLE lekarze
(
  nr_lekarza serial NOT NULL,
  imie character varying(20) NOT NULL,
  nazwisko character varying(20) NOT NULL,
  nr_dowodu_lekarza character(9) NOT NULL,
  nr_pesel_lekarza character(11) NOT NULL,
  data_urodzenia date NOT NULL,
  kwota_brutto real NOT NULL,
  CONSTRAINT lekarz PRIMARY KEY (nr_lekarza, nr_dowodu_lekarza, nr_pesel_lekarza),
  CONSTRAINT lekarze_nr_dowodu_lekarza_key UNIQUE (nr_dowodu_lekarza),
  CONSTRAINT lekarze_nr_lekarza_key UNIQUE (nr_lekarza),
  CONSTRAINT lekarze_nr_pesel_lekarza_key UNIQUE (nr_pesel_lekarza)
)
CREATE TABLE placowki
(
  nr_placowki serial NOT NULL,
  nazwa_placowki character varying(30) NOT NULL,
  adres character(30) NOT NULL,
  nr integer NOT NULL,
  kod_pocztowy integer NOT NULL,
  miejscowosc character varying(20) NOT NULL,
  kontrakt_z_nfz date,
  przydzial_oddzialu_nfz serial NOT NULL,
  CONSTRAINT placowka PRIMARY KEY (nr_placowki, nazwa_placowki),
  CONSTRAINT placowki_przydzial_oddzialu_nfz_fkey FOREIGN KEY (przydzial_oddzialu_nfz)
      REFERENCES oddzial_nfz (nr_oddzialu_nfz) MATCH SIMPLE
      ON UPDATE CASCADE ON DELETE NO ACTION,
  CONSTRAINT placowki_nazwa_placowki_key UNIQUE (nazwa_placowki)
)
CREATE TABLE oddzial_nfz
(
  nr_oddzialu_nfz serial NOT NULL,
  region_oddzialu character varying(20) NOT NULL,
  adres_siedziby character varying(20) NOT NULL,
  nr_siedziby integer NOT NULL,
  kod_pocztowy_siedziby integer NOT NULL,
  miejscowosc_siedziby character varying(20),
  procent_refunacji numeric(2,2),
  CONSTRAINT oddzialy_nfz PRIMARY KEY (nr_oddzialu_nfz, region_oddzialu),
  CONSTRAINT oddzial_nfz_nr_oddzialu_nfz_key UNIQUE (nr_oddzialu_nfz),
  CONSTRAINT oddzial_nfz_region_oddzialu_key UNIQUE (region_oddzialu)
)


Problem jest taki ze w zaden sposob nie wyswietla mi tego co chce uzyskac, bledu w zapytaniu nie wyrzuca jednak tabela zostaje pusta.
Co w zapytaniu jest nie tak?
Go to the top of the page
+Quote Post
mmmmmmm
post 26.05.2015, 11:39:01
Post #2





Grupa: Zarejestrowani
Postów: 1 421
Pomógł: 310
Dołączył: 18.04.2012

Ostrzeżenie: (0%)
-----


Zastanów się... Łączysz lekarze.nr_pesel_lekarza z placowki.nazwa_placowki i chcesz aby się coś wyświetliło? Nie ma szans, aby PLACÓWKA nazwysła się tak, jak PESEL lekarza. A nawet jakby, to co najwyżej JEDNEGO lekarza, bo pesele powinny być unikalne - i tak masz zdefiniowane. Druga sprawa, to nie wiem, czy wiesz, ale w tabeli placowki masz dwa pola SERIAL... a to niezdrowo...
Go to the top of the page
+Quote Post
Matrix15
post 26.05.2015, 22:38:59
Post #3





Grupa: Zarejestrowani
Postów: 2
Pomógł: 0
Dołączył: 26.05.2015

Ostrzeżenie: (0%)
-----


Dzieki za odpowiednie naswietlenie sytuacji, nie lapalem do konca ocb ale udalo sie to ogarnac.
Poprawione co trzeba i dziala.

Temat mozna zamknac.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 14.11.2024 - 02:29