[ Príspevkov: 6 ] 
AutorSpráva
Offline

Užívateľ
Užívateľ
zoskupenie dat

Registrovaný: 04.12.07
Prihlásený: 05.11.15
Príspevky: 347
Témy: 51 | 51
Bydlisko: Internet
NapísalOffline : 08.03.2011 11:31 | zoskupenie dat

Zdravím... Robím jeden portál, v ktorom sú články. V týchto článkoch si zapisujem aj klucove slová. Na klucove slova mam specialnu tabulku v tvare:
Kód:
id   |    id_clanku |   tag


Na stránke sa mi zobrazuju tieto clanky, a pod nim mam podobne clanky.
A teraz, ked v danom clanku je nejaky tag s inymi tagmi u ineho clanku, tak sa mi zobrazia linky na tieto clanky. Lenze neiktory clanok ma s inymi clankami viac rovnakych tagov, a napr. niektory link na clanok mi napise tolko krat, kolko maju spolocne tagy. Ako dosiahnut, aby sa mi dany link na clanok objavil iba 1x?

Tu je nejaky kod:(no, nepozerajte na kvalitu kodu)

Kód:
// s tabulky tags vyberam riadky, v ktorom sa stlpec id_clanku rovna s id článkom
$sql_tagy = "SELECT * FROM tags WHERE id_clanku = '".$vypis_clanku["id"]."' ";
$result_tagy = mysql_query($sql_tagy, $connect);
while ($vypis_tagy=mysql_fetch_array($result_tagy))  {

// s tabulky tags vyberam návody, v ktorom v stlpci "tag" ma take iste slovo ako daná novinka
$sql_tags = "SELECT * FROM tags WHERE tag = '".$vypis_tagy["tag"]."' ";
$result_tags = mysql_query($sql);   
while ($vypis_tags=mysql_fetch_array($result_tags))




   
// takze mam id jednotlivych clankoch, kde sa nachadzaju tieto tagy. A teraz uz len vypisem dane clanky
 $sql_sql = "SELECT *  FROM clanky WHERE id = '".$vypis_tags["id_clanku"]."' AND id != '".$vypis_clanku["id"]."' ";
$result_sql = mysql_query($sql_sql, $connect);
while ($vypis_sql=mysql_fetch_array($result_sql))  {
echo"<a href=index.php> ".$vypis_sql["nazov_clanku"]."</a><br> ";         
     
}
}
}


Offline

Správca fóra
Správca fóra
zoskupenie dat

Registrovaný: 27.07.07
Príspevky: 3971
Témy: 51 | 51
Bydlisko: Bratislava
Vek: 32
NapísalOffline : 08.03.2011 13:13 | zoskupenie dat

napr. DISTINCT, GROUP BY, nechapem vsak, na co robis tolko zbytocnych selectov


_________________
Desktop: CPU: AMD Athlon64 3000+ | MB: Biostar K8T890-A9 | VGA: NVIDIA GeForce 6200 LE 256MB | RAM: 2x 1GB A-DATA DDR 400 MHz Dual Kit | HDD: WD Caviar Blue 320GB | DVD: LG GSA-H10N | Keyboard: Chicony KU-0420 Silver/Black | Mouse: Logitech RX1000 | Zdroj: Corsair CX400 400W | CASE: DELUX DLC-MD370 Black | LCD: 20" Samsung 206BW | Repro: Teac XL-20
Notebook: ACER Aspire 4820TG 14" | CPU: Intel Core i5 2,53 GHz | VGA: ATI Mobility Radeon HD5650 1GB / Intel HD Graphics | RAM: 4GB DDR3 1066 MHz | HDD: 640GB
Offline

Užívateľ
Užívateľ
zoskupenie dat

Registrovaný: 04.12.07
Prihlásený: 05.11.15
Príspevky: 347
Témy: 51 | 51
Bydlisko: Internet
Napísal autor témyOffline : 21.03.2011 15:27 | zoskupenie dat

Môžem sa opýtať, ktorý je tu zbytočný select, lebo skúšam nad tým kódom, skúšam a nejde mi to... Asi sa jedna o prve dva selecty, ale ako urobiť, aby sa mi zobrazovali ID článkov, v ktorých sa nachádza aspoň jedno z kľúčových slov bez predchádzajúceho zistenia, že aké kľúčové slová patria k danému článku?

A mohol by som sa ťa spýtať, ako s tým groupom, lebo skúšal som to dať, ale nejako to nejde. Lebo tak sa mi zdá, že ono každé slovo hľadá osobitne, takže na jedno kľúčové slovo nenájde dva rovnaké články.


Offline

Správca fóra
Správca fóra
zoskupenie dat

Registrovaný: 27.07.07
Príspevky: 3971
Témy: 51 | 51
Bydlisko: Bratislava
Vek: 32
NapísalOffline : 21.03.2011 20:12 | zoskupenie dat

jeden vnoreny select a mas to vyriesene... nepotrebujes pouzivat 3 selecty a este k tomu 2 z nich opakovane volane v cykle...

ako si pouzival ten group by? daj priklad, v ktorom ti to neslo...


_________________
Desktop: CPU: AMD Athlon64 3000+ | MB: Biostar K8T890-A9 | VGA: NVIDIA GeForce 6200 LE 256MB | RAM: 2x 1GB A-DATA DDR 400 MHz Dual Kit | HDD: WD Caviar Blue 320GB | DVD: LG GSA-H10N | Keyboard: Chicony KU-0420 Silver/Black | Mouse: Logitech RX1000 | Zdroj: Corsair CX400 400W | CASE: DELUX DLC-MD370 Black | LCD: 20" Samsung 206BW | Repro: Teac XL-20
Notebook: ACER Aspire 4820TG 14" | CPU: Intel Core i5 2,53 GHz | VGA: ATI Mobility Radeon HD5650 1GB / Intel HD Graphics | RAM: 4GB DDR3 1066 MHz | HDD: 640GB
Offline

Užívateľ
Užívateľ
zoskupenie dat

Registrovaný: 04.12.07
Prihlásený: 05.11.15
Príspevky: 347
Témy: 51 | 51
Bydlisko: Internet
Napísal autor témyOffline : 22.03.2011 20:53 | zoskupenie dat

Tak, v tom kode co som poslal, dal som to do druheho selectu a dal som zoskupit podľa id_clanku po WHERE.

Inak, ked sme uz v tom, tak skusal som vnorene odkazy,
Kód:
"SELECT * FROM tags WHERE tag = (SELECT (tag) FROM tags  WHERE id_clanku = '".$vypis_clanku["id"]."')  "


A ked som dal zobrazit vyhovujuce data, tak mi vypislao iba nejaku chybu, mozes, mi prosim povedat, kde je chyba?


Offline

Užívateľ
Užívateľ
zoskupenie dat

Registrovaný: 20.10.08
Prihlásený: 18.01.14
Príspevky: 2626
Témy: 31 | 31
Bydlisko: Bratislava
NapísalOffline : 22.03.2011 21:01 | zoskupenie dat

nauc sa joinovat, lebo hento je hroza a strach :) nainstaluj si mysql workbench (je zadarmo) a mas tam konzolu a mozes nad databazou veselo skusat prikazy az potom to implementovat uz funkcne rovno do kodu...


_________________
Desktop: iMac 21" CPU: i5 2.7GHz RAM: 4 GB DDR3 1333MHz GPU: AMD Radeon HD 6770M 512MB RAM HDD: 1TB 7200 rpm OS: Mac OS X Lion Desktop: CPU: AMD Phenom II x4 BE 955 3.2@3.6GHz 1.35@1.30V CPU Cooler: Gelid Tranquillo rev.2 MB: Gigabyte 880GM-UD2H RAM: 2x2 GB Kingston 1333MHz GPU: MSI HD 6850 Cyclone 1GB PSU: Seasonic S12II-620 620W HDD: Seagate Barracuda 7200.12 1TB Case: CoolerMaster Elite 333 LCD: 22" LG flatron W2261VP Keyboard: Microsoft Comfort Curve 2000 Mouse: Microsoft Wireless Mobile Mouse 4000 OS: Windows 8 Notebook: Macbook Pro 13" CPU: i5 2.4GHz RAM: 4 GB DDR3 1333MHz GPU: Intel HD Graphics 3000 384MB RAM HDD: 500GB 5400 rpm OS: Mac OS X Lion Tablet: iPad 2 64GB 3G Phone: HTC Desire S Phone: iPhone 8GB
 [ Príspevkov: 6 ] 


zoskupenie dat



Podobné témy

 Témy  Odpovede  Zobrazenia  Posledný príspevok 
V tomto fóre nie sú ďalšie neprečítané témy.

c++ zoskupenie funkcii

v Assembler, C, C++, Pascal, Java

6

138

26.11.2012 16:42

silentasflash

V tomto fóre nie sú ďalšie neprečítané témy.

Chcem dať môj JS projekt na github, ako tam dať obrázky?

v Ostatné

10

415

27.03.2014 21:56

Kamahl

V tomto fóre nie sú ďalšie neprečítané témy.

Záchrana dát

v Operačné systémy Microsoft

4

125

25.07.2015 11:33

liena

V tomto fóre nie sú ďalšie neprečítané témy.

Zrkadlenie dát

v Pevné disky a radiče

17

538

28.05.2014 11:52

JanoF

V tomto fóre nie sú ďalšie neprečítané témy.

Prenos dat

v Siete

0

316

30.12.2007 20:58

feldino

V tomto fóre nie sú ďalšie neprečítané témy.

obmedzenie dát

v Sieťové a internetové programy

1

217

05.06.2012 20:37

majky358

V tomto fóre nie sú ďalšie neprečítané témy.

filtrovanie dat

v PHP, ASP

5

387

12.12.2011 23:32

walther

V tomto fóre nie sú ďalšie neprečítané témy.

zachrana dat

v Operačné systémy Unix a Linux

5

295

27.08.2011 21:39

phodinux

V tomto fóre nie sú ďalšie neprečítané témy.

zacharana dat

v Ostatné programy

1

946

13.04.2006 11:41

XPM

V tomto fóre nie sú ďalšie neprečítané témy.

obnova dat

v Pevné disky a radiče

2

487

22.08.2007 4:46

Miro84

V tomto fóre nie sú ďalšie neprečítané témy.

Spotreba dát

v Sieťové a internetové programy

4

202

31.05.2017 8:26

arrest

V tomto fóre nie sú ďalšie neprečítané témy.

Zaloha dat

v Ostatné programy

3

567

28.09.2008 17:36

Kopasz

V tomto fóre nie sú ďalšie neprečítané témy.

Zalohovanie dat

v Operačné systémy Microsoft

3

163

21.10.2012 22:01

brmbo

V tomto fóre nie sú ďalšie neprečítané témy.

Záloha dát

v Operačné systémy Microsoft

3

109

03.04.2013 19:10

shiro

V tomto fóre nie sú ďalšie neprečítané témy.

obnova dat

v Ostatné programy

3

1348

08.02.2006 19:36

Boofy

V tomto fóre nie sú ďalšie neprečítané témy.

Počitadlo dat

v Sieťové a internetové programy

2

444

30.01.2010 14:05

Obie



© 2005 - 2017 PCforum, edited by JanoF