Jak na výběr z jedné tabulky podle údajů z druhé tabulky   otázka

SQL

Jak vybrat pouze data z jedné tabulky (tab1, klíče URL, titulek, datum, pocitac). Potřebuji vybrat ty záznamy, u kterých není v URL část řetězce, která je uvedena ve druhé tabulce (URL). Mělo by se jednat o stejný dotaz jako SELECT knihovna.kniha FROM knihovna,cetba WHERE knihovna.kniha=cetba.kniha;, bohužel netuším jak do dotazu zakomponovat % jako znak nahrazující řetězec za a před názvem.

Tab1:

www.seznam.cz/hledani;nic;datum;pocitac

www.google.cz/mail;nic;datum;pocitac

www.nic.cz/pokus;nic;datum;pocitac

Tab2 (zakazane):

Google.cz

Výsledek:

www.seznam.cz/hledani;nic;datum;pocitac

www.nic.cz/pokus;nic;datum;pocitac

nahlásit spamnahlásit spam 0 odpovědětodpovědět

nastudujte si příkazy LEFT JOIN a INNER JOIN.

nahlásit spamnahlásit spam 1 / 1 odpovědětodpovědět

Děkuji za postrčení, bohužel příkaz

SELECT * FROM `Tab1` LEFT JOIN `Tab2` USING ( URL )

vypíše obsah celé tabulky, a do příkazu

SELECT * FROM `Tab1` LEFT JOIN `Tab2` ON Tab1.URL=Tab2.URL

netuším jak zakomponovat, že se část URL z první tabulky nesmí rovnat řetězci uvedeném v druhé tabulce.

Například tohle nefunguje:

SELECT * FROM `Tab1` LEFT JOIN `Tab2` ON Tab1.URL!=%Tab2.URL%

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Použijte příkat Not Like

nahlásit spamnahlásit spam 1 / 1 odpovědětodpovědět

SELECT * FROM `Tab1` LEFT JOIN `Tab2` ON Tab1.URL not like %Tab2.URL%

Mohu poprosit o lepší vysvětlení, tento příkaz nefunguje a příkaz

SELECT * FROM `Tab1` LEFT JOIN `Tab2` ON Tab1.URL not like Tab2.URL

vypíše toto

URL Title ModifiedDate Stanice URL

http://www.seznam.cz/hledani nic 2011-01-11 09:12:10 pocitac google.cz

http://www.google.cz/mail nic 2011-01-11 09:12:40 pocitac2 google.cz

http://www.nic.cz/pokus zase nic 2011-01-11 09:13:05 jiny pocitac google.cz

nahlásit spamnahlásit spam 1 / 1 odpovědětodpovědět

.

SELECT * FROM Tab1 tbl1 LEFT JOIN Tab2tbl2 ON tbl1.URL not like '%tbl2.URL%'

nahlásit spamnahlásit spam 1 / 1 odpovědětodpovědět

Ne stále nefunguje, vrátí toto:

URL		Title		ModifiedDate		Stanice		URL
http://www.seznam.cz/hledani	nic	2011-01-11 09:12:10	pocitac	google.cz
http://www.google.cz/mail	nic	2011-01-11 09:12:40	pocitac2	google.cz
http://www.nic.cz/pokus	zase nic	2011-01-11 09:13:05	jiny pocitac	google.cz

nahlásit spamnahlásit spam 1 / 1 odpovědětodpovědět
                       
Nadpis:
Antispam: Komu se občas házejí perly?
Příspěvek bude publikován pod identitou   anonym.
  • Administrátoři si vyhrazují právo komentáře upravovat či mazat bez udání důvodu.
    Mazány budou zejména komentáře obsahující vulgarity nebo porušující pravidla publikování.
  • Pokud nejste zaregistrováni, Vaše IP adresa bude zveřejněna. Pokud s tímto nesouhlasíte, příspěvek neodesílejte.

přihlásit pomocí externího účtu

přihlásit pomocí jména a hesla

Uživatel:
Heslo:

zapomenuté heslo

 

založit nový uživatelský účet

zaregistrujte se

 
zavřít

Nahlásit spam

Opravdu chcete tento příspěvek nahlásit pro porušování pravidel fóra?

Nahlásit Zrušit

Chyba

zavřít

feedback