Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Podmiana jednego pola wartoscia 2 pola
Forum PHP.pl > Forum > Bazy danych
orson
witam ...

mam nastepujacy problem z sql [znowu :|]
mam 2 tabele

1 tabela:
zawiera texty wyswietlane na stronie
kazdy wiersz ma pole add_by [smallinit(5)] w tym polu jest id usera ktory dodal dany text

2 tabela:
tabela z userami ... sklada sie z user_id[smallinit(5)], user_login i innych

problem:
zapytanie slq ktore:
pobiera WSZYSTKIE texty i w kazdym wierszu wyniku podmienia wartosc id na login odpowiadajacy id w bazie userow ...

mam nadzieje ze wszyscy skapowali o co mi chodzi ...
chcialbym miec to w 1 zapytaniu ... na 2 to zaden problem ... jezeli jednak nie bedzie sie dalo to trudno ...
KaMeLeOn
  1. SELECT t1.*, t2.user_login FROM tabela1 AS t1, tabela2 AS t2 WHERE t1.add_by = t2.user_id;

Można to złączyć też JOIN'em, ale nie będę Ci mieszał w głowie...
orson
witam ...

dzieki !! dziala biggrin.gif

cya

update:
a mam jeszcze 1 pytanko ... czy da sie w ten sposob podmienic dwie wartosci questionmark.gif
bo w tabeli text mam jeszcze pole verify_by ktore przechowuje user_id [ to id jest inne niz id dodajacego ...]
gdy zmienie zapytanie:
[sql:1:5da88a38ef]
SELECT t1.*, t2.user_login
FROM tabela1 AS t1, tabela2 AS t2
WHERE t1.add_BY = t2.user_id AND t1.verify_by = t2.user_id;
[/sql:1:5da88a38ef]
to nie dziala tak jakbym chcial ... podmienia tylko w przypadku gdy dodajacy i weryfikujacy maja to samo id ... gdy jest inne wstawia null

cya
uboottd
  1. SELECT t1.*, t2.user_login AS addby, t3.user_login AS verify
  2. FROM tabela1 AS t1, tabela2 AS t2, tabela2 AS t3
  3. WHERE t1.add_by = t2.user_id AND t1.verify_by = t3.user_id;


Chyba ze verify_by moze byc jeszcze nie ustawione:

  1. SELECT t1.*, t2.user_login AS addby, ifnull(t3.user_login,'Nie zweryfikowane') AS verify
  2. FROM tabela1 AS t1, tabela2 AS t2 LEFT JOIN tabela2 AS t3 ON t1.verify_by = t3.user_id
  3. WHERE t1.add_by = t2.user_id
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.