Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: zapytanie SQL odnośnie powiązania tabel
Forum PHP.pl > Forum > Bazy danych > MySQL
klimba
Witam !

pewnie to banał ale mi nie wychodzi. Nadmieniam że jestem początkujący

problem wygląda tak

w tabeli A mam pole 1 gdzie są przechowywane ID producenta towaru
w tabeli B są te ID i nazwy producenta towaru

jak robię zapytanie

select 'pole1' from A

to otrzymują same ID a nie nazwy jak wydobyć nazwy producenta z tabeli B nadmienię ,że robię selecta z tabeli A bo tam mam inne ważne informacje

z góry dzięki
sci201
Musisz połaczyć te 2 table poprzez np klucze poleceniem
  1. INNER JOIN
. Jak byś napisał konkrestnie strukture tabneli to bym Ci napisał taką prosta kwerendke / zapytanie sql
klimba
ok to tak
Tabela A to tabela "produkt" gdzie jest pole ID_produktu
Tabela B to tabela "info" gdzie jest także pole ID_Produktu tylko, że w tabeli B do danego ID_produktu jest przyporządkowana nazwa produktu która jest przechowywana w polu "nazwa"
chciałbym korzystając z tabeli A z pola ID_produktu widzieć nazwę tego produktu a nie jego ID
Mchl
Kod
SELECT
  p.cosTam, p.cosTamInnego, ... , i.nazwa
FROM
  produkty AS p
CROSS JOIN
  info AS i
USING(ID_produktu)
klimba
Kurczę gdzieś robię błąd
może mi ktoś pomóc napisać konkretne zapytanie już daję konkretne tabele i konkretne pola

Tabela 1: "sklep"
Kolumny: ID,ID_produkt,ID_producent,cena,ID_kategorii


Tabela 2: "produkty"
Kolumny: ID_produkt,Nazwa

Tabela 3: "producenci"
Kolumny: ID_producent,Nazwa

Tabela 4: "kategorie"
Kolumny: ID_kategorii,Nazwa

Chciałbym stworzyć z tego raport z kolumnami

Nazwa produktu, Producent , Cena, Kategoria

Gdzieś robię błąd cały czas wyskakują mi jakieś błędy
!!POMOCY exclamation.gif smile.gif
Mchl
Kod
SELECT
  p.Nazwa AS produkt, pr.Nazwa AS producent, s.cena, k.Nazwa AS ketgoria
FROM
  sklep AS s
CROSS JOIN
  produkty AS p
USING(ID_produkt)
CROSS JOIN
  producenci AS pr
USING (ID_producent)
CROSS JOIN
  kategorie AS k
USING(ID_kategorii)
klimba
Witam !

pokombinowałem ze schematem

select T1.pole1, T2,pole2, T3.pole3 itd
from, T1, T2, T3, T4
where (t1.pk= T2.fk) and (T1.pk = T4.fk) and ( T2. pk = T3.fk)

i wyszło jak chciałem smile.gif

może się komuś przyda

dzięki Mchl za odp

Twój sposób też przetestuję smile.gif
Mchl
Optymizer obydwa przekształci tak samo. Różnica jest tak naprawdę tylko w składni.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.