![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 330 Pomógł: 0 Dołączył: 25.01.2008 Ostrzeżenie: (0%) ![]() ![]() |
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ść ? |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Przyjaciele php.pl Postów: 7 494 Pomógł: 302 Dołączył: 31.03.2004 Ostrzeżenie: (0%) ![]() ![]() |
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ę. |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 330 Pomógł: 0 Dołączył: 25.01.2008 Ostrzeżenie: (0%) ![]() ![]() |
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
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 20.08.2025 - 19:03 |