Forum » Programiranje » sql
sql

BRBR ::
Avto
Kako dobim ven B na osnovi pogoja, da mora imeti kolo, ne sme pa imet vrat. Join. Kajpak spiski delov/pogojev-on/off so daljši.
master a b detail a kolo a vrata b kolo
Kako dobim ven B na osnovi pogoja, da mora imeti kolo, ne sme pa imet vrat. Join. Kajpak spiski delov/pogojev-on/off so daljši.
Never underestimate the power of idiots in large groups.
- spremenil: BRBR ()

WizzardOfOZ ::
imena polj?
prvi stolpec 1, drugi 2
prvi stolpec 1, drugi 2
select b.1 , b.2 from detail b , master a where b.2 <> 'vrata' and b.2 = 'kolo' and a.1 = b.1 and a.1 = b
Milčinski je napisal butalce kot prispodobo in ne kot priročnik!!!
Svuda u svijetu ima budala ali je izgleda kod nas centrala!!!
Svuda u svijetu ima budala ali je izgleda kod nas centrala!!!
Zgodovina sprememb…
- spremenilo: WizzardOfOZ ()

BRBR ::
Zadnja vrstica ?
Never underestimate the power of idiots in large groups.
Zgodovina sprememb…
- spremenil: BRBR ()

BRBR ::
Zadnja vrstica ?
Test tabele;
CREATE TABLE IF NOT EXISTS `1_detail` ( `id` varchar(50) COLLATE utf8_slovenian_ci DEFAULT NULL, `prop` varchar(50) COLLATE utf8_slovenian_ci DEFAULT NULL ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_slovenian_ci; INSERT INTO `1_detail` (`id`, `prop`) VALUES ('a', 'kolo'), ('a', 'vrata'), ('b', 'kolo'); CREATE TABLE IF NOT EXISTS `1_master` ( `id` varchar(50) COLLATE utf8_slovenian_ci DEFAULT NULL ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_slovenian_ci; INSERT INTO `1_master` (`id`) VALUES ('a'), ('b');
sql kao, ki pa ne dela:
select b.id , b.prop from 1_detail b , 1_master a where b.prop <> 'vrata' and b.prop = 'kolo' and a.id = b.id
Never underestimate the power of idiots in large groups.
Zgodovina sprememb…
- spremenil: BRBR ()

WizzardOfOZ ::
Probaj potem samo to:
select id , prop from 1_detail where prop <> 'vrata'
Milčinski je napisal butalce kot prispodobo in ne kot priročnik!!!
Svuda u svijetu ima budala ali je izgleda kod nas centrala!!!
Svuda u svijetu ima budala ali je izgleda kod nas centrala!!!

bemfa ::
Najlepša rešitev bi bila nosql baza, najenostavnejša pa subquery.
Če je performančno problem, pa kak dodatn view, ki predprocesira podatke (označi vsakemu masteru 0/1 kot has_vrata).
SELECT m.id FROM master m LEFT JOIN detail AS d1 ON d1.id = m.id WHERE (SELECT d2.id FROM detail d2 WHERE d2.id=m.id AND d2.prop='vrata') IS NULL
Če je performančno problem, pa kak dodatn view, ki predprocesira podatke (označi vsakemu masteru 0/1 kot has_vrata).
Vredno ogleda ...
Tema | Ogledi | Zadnje sporočilo | |
---|---|---|---|
Tema | Ogledi | Zadnje sporočilo | |
» | [php] encoding nizaOddelek: Izdelava spletišč | 4143 (2058) | BivšiUser2 |
» | Šumniki v php-juOddelek: Izdelava spletišč | 4878 (3381) | JoSmo |
» | Šumniki in phpOddelek: Izdelava spletišč | 1622 (1412) | shadeX |
» | Java - Problem zarad šumnikov pri SQLOddelek: Programiranje | 1680 (1431) | DiTi |
» | kako spreminiti vse php fajle in celo bazo v utf-8Oddelek: Izdelava spletišč | 1398 (1178) | Senzacionale |