Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [sql] Dwa pola o takiej samej nazwie, ale z innych tabel
Forum PHP.pl > Forum > PHP
propage
W tabeli product i tabeli promotion mam 2 pola o takiej samej nazwie product_id 

Po wywołaniu takiego zapytania: 

SELECT * FROM product p left join promotion pro on (pro.product_id = p.product_id)

Zawartpść "product_id" bedzie pusta, nie mniej jesli to samo zapytanie skopiuje i wykonam w phpmyadminie to pokaze mi poprawne wartosci w w polach product_id 


Oczywiscie takie zapytanie

SELECT *, p.product_id as product_id FROM product p left join promotion pro on (pro.product_id = p.product_id)

Zwróci mi też prawisłowe wartości. 



Da się skonfigurować jakoś mysql, aby zwracalo poprawną mimo tego ze 2 pole jest dwuznaczne, ale przeciez z kazdej tabeli jest w nim taka sama wartość ?  
mike
Skoro pole nie jest jednoznacze to która wartość jest poprawna?
Nie da się tego zautomatyzować. Po to powstały aliasy, żeby takie sytuacje nie były problemem.

Jeśli korzystasz z aliasów jest OK, więc w czym problem. Chciałbyś żeby bez aliasów działało tak jak z nimi? Nie da się.
propage
no ale po tym polu "product_id" dokonuje łączenia tabel więc musi być dla nich identyczna wartość, a problem jest w tym że trzeba używac aliansów 
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.