Obsah fóra
PravidláRegistrovaťPrihlásenie




Odpovedať na tému [ Príspevkov: 6 ] 
AutorSpráva
Offline

Užívateľ
Užívateľ
vypis jedinecnych poloziek

Registrovaný: 07.08.06
Prihlásený: 18.11.21
Príspevky: 947
Témy: 268
Bydlisko: Levice
Príspevok NapísalOffline : 18.02.2018 15:20

mam trosku zlozitejsiu query:

Kód:
$mysqli->query("SELECT t1.* FROM news t1, kategorie t2 WHERE t1.hide='0' AND t1.id = t2.itemid AND (t2.katid='2' OR t2.katid='3' OR t2.katid='6') ");


ktora my vypise vsetky polozky z tabulky news, ktorych ID sa zhoduje s ITEMID z tabulky kategorie a sucasne maju KATID 2,3 alebo 6.

Toto funguje v poriadku, tak ako ma, lenze problem je, ak niektora polozka je v tabulke kategorie dvakrat, t.j. napr. je aj v kategorii 2 ale aj 3. Potom mi toto vypise logicky dvakrat.

Chcem vsak, aby danu polozku vypisalo iba raz, napriek tomu, ze bude vo viacerich kategoriach.

Skusal som davat DISTINCT t1.id = t2.itemid, ale to nefunguje, ani t1.id = DISTINCT t2.itemid.

Vedeli by ste prosim poradit?


Offline

Prevádzkovateľ fóra
Prevádzkovateľ fóra
vypis jedinecnych poloziek

Registrovaný: 01.05.05
Príspevky: 13343
Témy: 1494
Bydlisko: Bratislava
Príspevok NapísalOffline : 18.02.2018 15:29

DISTINCT(t1.id)







_________________
Streacom DA2 | SilverStone Titanium SX800-LTI 800W | ASRock X299E-ITX/ac | Intel Core i9-9980XE & be quiet! Dark Rock TF | Kingston HyperX Impact 64 GB DDR4 2666 MHz | NVIDIA Titan RTX 24 GB | Intel SSD Optane 905P 480 GB NVMe U.2 & Intel SSD 750 1,2 TB NVMe U.2 & Intel SSD 660p 2 TB NVMe M.2 & Seagate BackUp Plus Portable 56 TB USB | 55" 4K OLED Dell Alienware AW5520QF & 24" LCD EIZO FlexScan EV2451 | Ergotron LX Wall Mount Keyboard Arm | Logitech Craft | Logitech G603 | Logitech F710 | Harman Kardon Sabre SB 35 & Sennheiser RS 175 | Microsoft Windows 7 Ultimate | APC Back-UPS ES 700 | Lenovo ThinkPad X250 | iPhone X 256 GB & Pitaka Aramid | SilverStone ML05B Milo | Corsair SF600 SFX 600W | ASRock X99E-ITX/ac | Intel Xeon E5-2683 v4 & NOCTUA NH-L12S | Kingston HyperX Savage 32 GB DDR4 2400 MHz | NVIDIA GeForce GT 710 1 GB | Intel SSD Optane Memory 32 GB NVMe M.2 & Intel SSD 730 240 GB SATA | Ubuntu Server
Offline

Skúsený užívateľ
Skúsený užívateľ
vypis jedinecnych poloziek

Registrovaný: 19.03.07
Prihlásený: 26.03.24
Príspevky: 7076
Témy: 85
Bydlisko: BA
Príspevok NapísalOffline : 18.02.2018 15:30

Ako vyzerala ta distinct query presne a ako sa spravala?







_________________
Desktop: CPU AMD R7 1700x @ 3.85GHz | Cooling be quiet! Dark Rock Pro 4 | MB ASRock X470 Taichi Ult. | RAM 4x8GB DDR4 G-SKILL TridentZ RGB 3000 CL16-16-16-36 | VGA Powercolor VEGA56 + Raijintek Morpheus II | SSD Crucial MX300 525GB | HDD Seagate Ironwolf 3TB 5900rpm | PSU CORSAIR RM750X | MONITOR AOC Q3279VWFD8 | MOUSE HyperX Pulsefire FPS + Razer eXactMat | HyperX Alloy FPS Brown | HyperX Cloud | ARCH x64 &
Notebook: DELL inspiron 7537 i7 4500U, 16GB RAM, nv750, FHD IPS,Crucial M4 128GB | ARCH x64 & Surface Go 8/128 &
Mobil: LG v40 ThinQ (2018) & SBC: Raspberry pi 0 | 3B+ & Headphones: Senheiser HD58X | AKG K551 + detachable cable mod | Linsoul TIN T2 | KZ SZN
Offline

Užívateľ
Užívateľ
vypis jedinecnych poloziek

Registrovaný: 07.08.06
Prihlásený: 18.11.21
Príspevky: 947
Témy: 268
Bydlisko: Levice
Príspevok Napísal autor témyOffline : 18.02.2018 15:44

No ked tam dam ten DISTINCT ako napr. JanoF poradil, tak hlasi chybu check the manual ... for the right syntax to use near 'DISTINCT(t1.id) = t2.itemid AND (t2.katid='2' OR t2.katid='3' OR t2.katid='6')' at line 1

DISTINCT podla mna nemoze byt v podmienkach, ale iba na zaciatku, kde je SELECT DISTINCT...


EDIT: aha tak nakoniec som pridal toto GROUP BY t2.itemid

a funguje to, to sposobi, ze sa zobrazia len jedinecne polozky.


Offline

Skúsený užívateľ
Skúsený užívateľ
vypis jedinecnych poloziek

Registrovaný: 19.03.07
Prihlásený: 26.03.24
Príspevky: 7076
Témy: 85
Bydlisko: BA
Príspevok NapísalOffline : 18.02.2018 15:59

"SELECT DISTINCT t1.* ..." nerobi to co chces? Pripadne urobit najprv distict, potom join?







_________________
Desktop: CPU AMD R7 1700x @ 3.85GHz | Cooling be quiet! Dark Rock Pro 4 | MB ASRock X470 Taichi Ult. | RAM 4x8GB DDR4 G-SKILL TridentZ RGB 3000 CL16-16-16-36 | VGA Powercolor VEGA56 + Raijintek Morpheus II | SSD Crucial MX300 525GB | HDD Seagate Ironwolf 3TB 5900rpm | PSU CORSAIR RM750X | MONITOR AOC Q3279VWFD8 | MOUSE HyperX Pulsefire FPS + Razer eXactMat | HyperX Alloy FPS Brown | HyperX Cloud | ARCH x64 &
Notebook: DELL inspiron 7537 i7 4500U, 16GB RAM, nv750, FHD IPS,Crucial M4 128GB | ARCH x64 & Surface Go 8/128 &
Mobil: LG v40 ThinQ (2018) & SBC: Raspberry pi 0 | 3B+ & Headphones: Senheiser HD58X | AKG K551 + detachable cable mod | Linsoul TIN T2 | KZ SZN
Offline

Užívateľ
Užívateľ
vypis jedinecnych poloziek

Registrovaný: 07.08.06
Prihlásený: 18.11.21
Príspevky: 947
Témy: 268
Bydlisko: Levice
Príspevok Napísal autor témyOffline : 18.02.2018 16:08

nie, to nefungovalo, ja totiz nechcem jedinecne ID z prvej tabulky, ale itemid z druhej. Ale uz som to vyriesil tym GROUP BY, funguje to.

Joinom by sa to mozno dalo, ale uz som to query nechcel moc prerabat.


Odpovedať na tému [ Príspevkov: 6 ] 


Podobné témy

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

v JavaScript, VBScript, Ajax

0

465

13.11.2009 19:12

neXor Zobrazenie posledných príspevkov

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

v JavaScript, VBScript, Ajax

1

684

23.02.2008 20:37

Ded'leg Zobrazenie posledných príspevkov

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

v Databázy

18

1363

30.12.2009 11:17

djsulo Zobrazenie posledných príspevkov

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

v Delphi, Visual Basic

2

604

25.12.2008 17:38

Loko11 Zobrazenie posledných príspevkov

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

v Biosy a ladenie výkonu

24

1118

05.08.2007 21:54

honda Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. zmena položiek dialogoveho okna vo winXP

v Operačné systémy Microsoft

3

397

10.05.2010 16:32

harm22 Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Pascal - triedenie podla jednotlivych poloziek záznamov

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

8

798

08.02.2009 19:25

tominoZA Zobrazenie posledných príspevkov

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

v PHP, ASP

13

994

26.06.2008 10:53

GoodWill Zobrazenie posledných príspevkov

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

v PHP, ASP

4

445

23.05.2010 21:53

rooobertek Zobrazenie posledných príspevkov

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

v PHP, ASP

11

585

14.04.2011 15:58

w3r0 Zobrazenie posledných príspevkov

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

v PHP, ASP

6

727

19.11.2010 13:30

emer Zobrazenie posledných príspevkov

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

v Sieťové a internetové programy

0

419

19.02.2008 15:29

dsljohn Zobrazenie posledných príspevkov

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

v Ostatné

3

479

27.08.2010 15:51

1987123 Zobrazenie posledných príspevkov

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

v PHP, ASP

6

476

30.05.2012 20:04

xxx9955 Zobrazenie posledných príspevkov

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

v Operačné systémy Microsoft

14

570

17.02.2016 21:06

bobino38 Zobrazenie posledných príspevkov

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

v PHP, ASP

3

601

16.12.2009 22:25

stenley Zobrazenie posledných príspevkov


Nemôžete zakladať nové témy v tomto fóre
Nemôžete odpovedať na témy v tomto fóre
Nemôžete upravovať svoje príspevky v tomto fóre
Nemôžete mazať svoje príspevky v tomto fóre

Skočiť na:  

Powered by phpBB Jarvis © 2005 - 2024 PCforum, webhosting by WebSupport, secured by GeoTrust, edited by JanoF
Ako väčšina webových stránok aj my používame cookies. Zotrvaním na webovej stránke súhlasíte, že ich môžeme používať.
Všeobecné podmienky, spracovanie osobných údajov a pravidlá fóra