Autor | Zpráva | ||
---|---|---|---|
Icka Profil * |
#1 · Zasláno: 13. 2. 2006, 13:02:05
Prosím poraďte jak vypíšu položky když mám 2 tabulky, z nichž jedna (tabulka A) je klasicky tabulka s uživatelemama a jejich id a v druhé (tabulka B) mám sloupce id a id_uzivatele.
No a potřeboval bych z tabulky B vypsat všechny id u kterejch platí to, že id_uzivatele již v tabulce A není. Prostě potřebuju aby se mi z tabulky B odstranily záznamy od neexistujících uživatelů, pač jsou už nepotřebný... |
||
Icka Profil * |
#2 · Zasláno: 13. 2. 2006, 13:04:06
Ny myslím, že by to mohlo bejt něco takovýho:
select id from tabulka_b where id_uzivatel != (select id from tabulka_a) |
||
Kajman_ Profil * |
#3 · Zasláno: 13. 2. 2006, 13:21:02
select id from tabulka_b where id_uzivatel not in (select id from tabulka_a)
nebo pro starší verze select id from tabulka_b left join tabulka_a on (tabulka_b.id_uzivatel=tabulka_a.id) where itabulka_a.id is null Na takovéhle automatické promazávání jsou použítelné cizí klíče, ale ty mají lepší db nebo snad i mysql od páté verze. |
||
Icka Profil * |
#4 · Zasláno: 13. 2. 2006, 13:30:41
Tak ani jedna mi nefunguje... tady přikládám moje dotazy:
1. select id_posta from chat_posta left join chat_uzivatele on id = komu where komu not in id 2. select id_posta from chat_posta left join chat_posta on (chat_posta.komu = chat_uzivatele.id) where chat_uzivatele.id is null Kde mám chybu?? |
||
Kajman_ Profil * |
#5 · Zasláno: 13. 2. 2006, 13:42:42
Ten první je naprostý nesmysl. Ten druhý má dvakrát tu samou tabulku (pokud to tak má být, tak použít alias).
|
||
Icka Profil * |
#6 · Zasláno: 13. 2. 2006, 13:47:09
Jojo...
Že jsem připojoval tutéž tabulku je nesmysl, coč jsem přehlídl. Opravil jsem to a vypadá to, že to funguje.. Jen to ještě testnu. Díky díky |
||
Časová prodleva: 18 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0