dodání ihned! nové
Black Friday je tu! Využij jedinečnou příležitost a získej až 80 % znalostí navíc zdarma! Více zde
BF
Avatar
Honza Bittner
Redaktor
Avatar
Honza Bittner:31.8.2013 12:48

Ahoj, určitě všichni znáte tagy, například z blohů - dívky, krása, počítač, auta atp ...

Nějak si neumím představit jak se vyhledávají články podle zadání více než 1 tagu a jak jsou tagy uložené v DB ?

(např. vyhledávám auta, dívky, sport a vyjedou mi články co tyto tagy obsahují)

Odpovědět
31.8.2013 12:48
Student FIT ČVUT. In love with Flutter. :-) Sleduj mě na https://twitter.com/tenhobi a ptej se na cokoli na https://g...
Avatar
David Čápka
Tým ITnetwork
Avatar
Odpovídá na Honza Bittner
David Čápka:31.8.2013 12:55

To je vazba m:n, dělá se to přes vazební tabulku. Je to určitě v MySQL tutoriálech.

Nahoru Odpovědět
31.8.2013 12:55
Jsem moc rád, že jsi na síti, a přeji ti top IT kariéru, ať jako zaměstnanec nebo podnikatel. Máš na to! :)
Avatar
Kit
Redaktor
Avatar
Odpovídá na Honza Bittner
Kit:31.8.2013 12:55

Jsou v podstatě 2 možnosti:

  • použiješ množiny. Mají význam, pokud se seznam tagů nemění příliš často a tabulka není moc velká.
  • použiješ vazební tabulky M:N mezi tabulkou s články a tabulkou s tagy. V daném případě to asi bude výhodnější i kvůli výkonu.
Editováno 31.8.2013 12:55
Nahoru Odpovědět
31.8.2013 12:55
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
David Čápka
Tým ITnetwork
Avatar
Odpovídá na Honza Bittner
David Čápka:31.8.2013 12:56

Nebo to můžeš udělat 1:N a nacpat to k článku jako booleany, záleží kolik máš tagů.

Nahoru Odpovědět
31.8.2013 12:56
Jsem moc rád, že jsi na síti, a přeji ti top IT kariéru, ať jako zaměstnanec nebo podnikatel. Máš na to! :)
Avatar
Kit
Redaktor
Avatar
Odpovídá na David Čápka
Kit:31.8.2013 12:59

Také záleží na tom, kolik má článků. Pro velký počet se to moc nedá použít, protože se to nedá rozumně indexovat. Tabulka se musí pokaždé procházet sekvenčně.

Nahoru Odpovědět
31.8.2013 12:59
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Honza Bittner
Redaktor
Avatar
Honza Bittner:31.8.2013 13:01

Děkuju oběma, už jsem našel i článek tak se na to pak kouknu :)

Vlastně bych mohl zkouknout celý ten tutoriál MySQL :D

Chci pak udělat blog, takže asi veliký 1/2 články deně atp ...
Tudíž bude ta M:N dobrá :)

Editováno 31.8.2013 13:02
Nahoru Odpovědět
31.8.2013 13:01
Student FIT ČVUT. In love with Flutter. :-) Sleduj mě na https://twitter.com/tenhobi a ptej se na cokoli na https://g...
Tento výukový obsah pomáhají rozvíjet následující firmy, které dost možná hledají právě tebe!
Avatar
David Čápka
Tým ITnetwork
Avatar
Odpovídá na Kit
David Čápka:31.8.2013 13:03

To je pravda, nevím jak by to bylo u těch booleanů rychlé, ale teoreticky by to nemuselo být tak špatné.

Nahoru Odpovědět
31.8.2013 13:03
Jsem moc rád, že jsi na síti, a přeji ti top IT kariéru, ať jako zaměstnanec nebo podnikatel. Máš na to! :)
Avatar
Kit
Redaktor
Avatar
Odpovídá na Honza Bittner
Kit:31.8.2013 13:04

Nedávno jsem si stáhl celý manuál MySQL. Do té doby jsem netušil, že má 4310 stran. Budu mít ve vlaku co číst :)

Nahoru Odpovědět
31.8.2013 13:04
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Honza Bittner
Redaktor
Avatar
Odpovídá na Kit
Honza Bittner:31.8.2013 13:08

Jo ? ...
NO, to bude na dlouho :D

Nahoru Odpovědět
31.8.2013 13:08
Student FIT ČVUT. In love with Flutter. :-) Sleduj mě na https://twitter.com/tenhobi a ptej se na cokoli na https://g...
Avatar
Kit
Redaktor
Avatar
Odpovídá na David Čápka
Kit:31.8.2013 13:09

V podstatě do několika tisíc až desítek tisíc položek by se to použít dalo, ale porušuje to 2NF a hůř se to udržuje.

Nahoru Odpovědět
31.8.2013 13:09
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Kit
Redaktor
Avatar
Odpovídá na Honza Bittner
Kit:31.8.2013 13:11

Je to referenční manuál. Hodí se, když potřebuješ vyhledat nějaký detail, jak přesně zní definice. Číst stránku po stránce bych se neodvážil.

Nahoru Odpovědět
31.8.2013 13:11
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 11 zpráv z 11.