Stránka: 1 z 1
| [ Príspevkov: 11 ] | |
Autor | Správa |
---|
Registrovaný: 22.03.07 Prihlásený: 04.07.14 Príspevky: 344 Témy: 97 | 97 |
Nazdarek. Chcel by som vas poprosit o radu resp. o pomoc. Mam spravenu databazu a v nej tabulku s tovarom. Tovar je rozdeleny do druhov (napr. elektro, papier atd.) No a potreboval by som zistit kolko (mnozstvo) tovaru sa nachadza v danom druhu (napr. v papier) a konkretne poradie vybraneho tovaru z daneho mnozstva.
TZN. ak budem mat v PAPIER 6 poloziek a ja si vyberiem napr. Ceruzka, tak aby som zistil ktora v poradi to je ( Napr. 3 zo 6).
Vybrat/ zistit pocet zaznamom mi az taky problem nerobi, ale ako zistit ktora polozka je to v poradi?? Da sa to nejako?? Vdaka za kazdu pomoc...
|
|
Registrovaný: 09.07.08 Prihlásený: 17.01.15 Príspevky: 1585 Témy: 96 | 96 |
GROUP BY kategoria, produkt ORDER BY count(*)
pripadne WHERE kategoria="papier" GROUP BY produkt ORDER BY count(*)
tak nejako, neviem, či som vystihol podstatu, to bol len taký rýchly výplod
_________________ neříkejte, že něco nejde udělat, protože se vždycky najde nějaký blbec, co neví, že to nejde – a udělá to! |
|
Registrovaný: 22.03.07 Prihlásený: 04.07.14 Príspevky: 344 Témy: 97 | 97 |
No takto dostanem ale ID tej polozky. Lenze ja potrebujem zistit poradie prvku zo skupiny (bez ohladu na ID) TZN. Ak budem mat skupinu Papier a v nej 6 poloziek, tak aby mi urcilo ktora to je v poradi:
PAPIER ( pero, guma, struhadlo, ceruzka, noznice, atrament)
Vyberem si , ceruzka, Tak aby mi vypisalo, ze je to 4 polozka v kategorii papier.
|
|
Registrovaný: 15.10.08 Prihlásený: 23.11.08 Príspevky: 14 Témy: 1 | 1 |
hm, nevjem ci si nemal namysli toto, ak ti ide o poradie:
Analyticka funkcia ROW_NUMBER()
Funkcia ROW_NUMBER prideľuje riadkom selectu poradové číslo. Aby bolo možné použiť toto poradové číslo v podmienke WHERE, je nutné vytvoriť temporary tabuľku a novovzniknutý stĺpec pomenovať.
|
|
Registrovaný: 09.07.08 Prihlásený: 17.01.15 Príspevky: 1585 Témy: 96 | 96 |
Vyzerá to pekne, ale v mysql (predpokladám, že sa jedná o mysql) to nie je... teda zatiaľ som to nenašiel v dokumentácii. Možno tam je čosi také len pod iným názvom
_________________ neříkejte, že něco nejde udělat, protože se vždycky najde nějaký blbec, co neví, že to nejde – a udělá to! |
|
Registrovaný: 09.09.07 Prihlásený: 07.11.16 Príspevky: 3114 Témy: 233 | 233 Bydlisko: Nové Zámky |
ak na nic lepsie neprides, pouzi toto:
Kód: $zobrazim = 'ceruzka'; $sql = "SELECT * FROM tovar WHERE material='papier'"; $vysl = mysql_query($sql); if(mysql_num_rows($vysl)>0) { $i = 1; while($r = mysql_fetch_assoc($vysl)) { if($r['nazov']=='ceruzka') { echo $zobrazim.' ma cislo '.$i; } $i++; } }
_________________ "It took a lot of work, but this latest Linux patch enables support for machines with 4096 CPUs, up from the old limit of 1024." "Do you have support for smooth full-screen flash video yet?" "No, but who uses that?"
- ak dlho neodpisujem do témy, zabudol som na ňu, takže ma upozornite SS, ak chcete moju odpoveď |
|
Registrovaný: 27.07.07 Príspevky: 3948 Témy: 51 | 51 Bydlisko: Bratislava |
Kód: SELECT a.*, @num := @num + 1 poradie FROM tovar a, (SELECT @num := 0) num WHERE material='papier'
_________________ NTB: Acer Aspire 4820TG 14" | CPU: Intel Core i5 2,53 GHz | VGA: ATI Mobility Radeon HD5650 1GB | RAM: 8GB DDR3 1066 MHz | HDD: 1TB SSD WD BLUE |
|
Registrovaný: 22.03.07 Prihlásený: 04.07.14 Príspevky: 344 Témy: 97 | 97 |
Blackshadow.. to je presne to co som potreboval...Dik.. Aj ostatnym za pomoc.. Som ani nevedel, ze v SQL su aj take moznosti vyberov ako ste tu popisali... Vdaka
|
|
Registrovaný: 09.09.07 Prihlásený: 07.11.16 Príspevky: 3114 Témy: 233 | 233 Bydlisko: Nové Zámky |
Ale to stenleyho riesenie bud lepsie
_________________ "It took a lot of work, but this latest Linux patch enables support for machines with 4096 CPUs, up from the old limit of 1024." "Do you have support for smooth full-screen flash video yet?" "No, but who uses that?"
- ak dlho neodpisujem do témy, zabudol som na ňu, takže ma upozornite SS, ak chcete moju odpoveď |
|
Registrovaný: 09.07.08 Prihlásený: 17.01.15 Príspevky: 1585 Témy: 96 | 96 |
a to ešte počkaj ak sa dostaneš k insert ... selectu, v ktorom budeš mať 20 tabuliek v 6 databázach pospájaných kadejakými joinmi, group, order, where, having kade-tade, CONCAT, CONCAT_WS, GROUP_CONCAT, vnorené dopyty vo vnorených dopytoch a do toho budeš ešte zamykať tabuľky a robiť transakcie...
A to je ešte len začiatok, si ani nechcem predstaviť tie sql dopyty v bankových informačných systémoch...
_________________ neříkejte, že něco nejde udělat, protože se vždycky najde nějaký blbec, co neví, že to nejde – a udělá to! |
|
Registrovaný: 21.10.07 Prihlásený: 02.09.09 Príspevky: 7 Témy: 0 | 0 |
v prípade, že máš IDčka číselného charakteru by si mohol použiť nasledovné
Kód: select sum(id <= 4) from tovar where material = 'papier'
kde 4 je ID produktu, ktorého poradie chceš zistiť..
|
|
Stránka: 1 z 1
| [ Príspevkov: 11 ] | |
Podobné témy | Témy | Odpovede | Zobrazenia | Posledný príspevok |
---|
| v Delphi, Visual Basic | 2 | 535 | 13.06.2013 23:20 Gregi555 | | v PHP, ASP | 7 | 626 | 15.08.2008 18:10 Blackdevil | | v PHP, ASP | 4 | 485 | 04.06.2011 7:59 stenley | | v Databázy | 6 | 829 | 01.10.2009 9:38 jtomcik | | v Biosy a ladenie výkonu | 1 | 630 | 17.10.2007 22:08 Mir | | v Databázy | 7 | 454 | 12.06.2018 10:53 Miso122 | | v HTML, XHTML, XML, CSS | 3 | 568 | 01.06.2010 19:22 zaciatocnik | | v HTML, XHTML, XML, CSS | 4 | 620 | 01.12.2007 11:43 emer | | v Operačné systémy Microsoft | 3 | 470 | 28.04.2007 21:04 Rbot | | v JavaScript, VBScript, Ajax | 1 | 441 | 08.02.2012 22:27 shaggy | | v PHP, ASP | 4 | 619 | 12.03.2009 22:49 cube2 | | v Databázy | 1 | 743 | 02.09.2007 9:49 SonnY | | v HTML, XHTML, XML, CSS | 10 | 684 | 11.08.2007 18:07 M4rek | | v JavaScript, VBScript, Ajax | 2 | 539 | 02.08.2011 7:15 camo | | v Databázy | 4 | 677 | 19.02.2009 20:04 rooobertek | | v Assembler, C, C++, Pascal, Java | 6 | 519 | 06.07.2010 8:09 koso |
|