Obsah fóra
PravidláRegistrovaťPrihlásenie




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

Skúsený užívateľ
Skúsený užívateľ
MySQL SELECT IN() a rovnake hodnoty

Registrovaný: 24.09.06
Prihlásený: 15.07.23
Príspevky: 1427
Témy: 37
Bydlisko: Bratislava
Príspevok NapísalOffline : 25.08.2009 13:52

Viem ze nazov temy ma nulovu vypovednu hodnotu, ale netusim ako to vysvetlit bez prikladu.

Posielam na databazu taketo query:
Kód:
SELECT nazov FROM tabulka WHERE id IN (1, 2, 3) ORDER BY FIELD(id, 1, 2, 3)

dostanem vysledok nazov1, nazov2, nazov3.

No kedze cast query v IN() je dynamicky generovana, moze nastat napr. takato situacia:
Kód:
SELECT nazov FROM tabulka WHERE id IN (1, 1, 2) ORDER BY FIELD(id, 1, 1, 2)

dostanem vysledok nazov1, nazov2 - teda nazov sa vrati iba pre kazde unikatne ID - ja by som potreboval nejako toto query upravit aby som dostal pozadovany vysledok nazov1, nazov1, nazov2.


Offline

Skúsený užívateľ
Skúsený užívateľ
MySQL SELECT IN() a rovnake hodnoty

Registrovaný: 09.07.08
Prihlásený: 17.01.15
Príspevky: 1585
Témy: 96
Príspevok NapísalOffline : 25.08.2009 14:12

Z databázy by si mal vyťahovať iba to, čo naozaj potrebuješ. A potom to u seba nejak pospájať.







_________________
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!
Offline

Užívateľ
Užívateľ
MySQL SELECT IN() a rovnake hodnoty

Registrovaný: 17.10.06
Prihlásený: 08.11.14
Príspevky: 37
Témy: 1
Bydlisko: blava
Príspevok NapísalOffline : 25.08.2009 14:27

ide o spájanie tabuliek, čiže potrebujeme ten záznam 2x keďže môže vyhovovať dvom záznamom z druhej tabuľky


Offline

Skúsený užívateľ
Skúsený užívateľ
MySQL SELECT IN() a rovnake hodnoty

Registrovaný: 29.10.07
Prihlásený: 27.10.23
Príspevky: 1395
Témy: 30
Bydlisko: Bratislava
Príspevok NapísalOffline : 25.08.2009 14:37

A preco to s tou druhou tabulkou neprevaizete? tam by sa vam zaznamy bezpecne rozmnozili







_________________
PC: OS: Windows 11 (64bit) CPU: AMD Ryzen 5 3600 GPU: ASUS TUF RTX3060Ti 8GB RAM: 16GB DDR4-3200MHz Kingston Fury MB: ASUS TUF Gaming B550M WIFI SSD: 1000GB PCIe M.2 NVME
Mobil: Xiaomi POCO F2 PRO
Offline

Užívateľ
Užívateľ
MySQL SELECT IN() a rovnake hodnoty

Registrovaný: 17.10.06
Prihlásený: 08.11.14
Príspevky: 37
Témy: 1
Bydlisko: blava
Príspevok NapísalOffline : 25.08.2009 14:44

toto bolo skor zjednodusene napisany problem, v skutocnosti je to podstatne rozsiahlejsie
ide o to, ze potrebujeme z db aj duplicitne data, teda nejaka obdoba tohto sql, ktora nam nevynecha data a pri IN('1','1','2') vrati tri riadky


Offline

Skúsený užívateľ
Skúsený užívateľ
MySQL SELECT IN() a rovnake hodnoty

Registrovaný: 09.07.08
Prihlásený: 17.01.15
Príspevky: 1585
Témy: 96
Príspevok NapísalOffline : 25.08.2009 14:51

Toto s sqlkom nespravíš, a ak áno, tak nie efektívne a rýchlo. Existuje nejaká šanca, že by ti stačili iba id-čka?







_________________
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!
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 20.12.08
Prihlásený: 02.02.20
Príspevky: 28
Témy: 5
Bydlisko: Košice
Príspevok NapísalOffline : 25.08.2009 14:54

Kód:
SELECT  nazov
FROM    (
        SELECT  1 AS x
        UNION ALL
        SELECT  1 AS x
        UNION ALL
        SELECT  2 AS x
        ) foo
JOIN    tabulka
ON     tabulka.id = foo.x


Offline

Skúsený užívateľ
Skúsený užívateľ
MySQL SELECT IN() a rovnake hodnoty

Registrovaný: 29.10.07
Prihlásený: 27.10.23
Príspevky: 1395
Témy: 30
Bydlisko: Bratislava
Príspevok NapísalOffline : 25.08.2009 15:41

Ak sem nepopisete podrobnejsie strukturu tabuliek a data ktore potrebujete, tak vam asi nikto poriadne neporadi.
Stale si ale myslim ze previazanie tabuliek problem riesi (ak su v jednej tabulke tie data duplicitne a v druhej nie).







_________________
PC: OS: Windows 11 (64bit) CPU: AMD Ryzen 5 3600 GPU: ASUS TUF RTX3060Ti 8GB RAM: 16GB DDR4-3200MHz Kingston Fury MB: ASUS TUF Gaming B550M WIFI SSD: 1000GB PCIe M.2 NVME
Mobil: Xiaomi POCO F2 PRO
Offline

Užívateľ
Užívateľ
MySQL SELECT IN() a rovnake hodnoty

Registrovaný: 17.10.06
Prihlásený: 08.11.14
Príspevky: 37
Témy: 1
Bydlisko: blava
Príspevok NapísalOffline : 25.08.2009 17:58

zjednodusene:
dve tabulky: 1. osoby, 2. zameranie

osoby:
id
meno

zameranie:
osoba_id
zameranie
priorita //urcuje poradie, vyssia prioirita je vyssie

v SQL uz mam ID osob, ktore chcem (teda mam ich ID v premennej):
Kód:
SELECT meno FROM osoby WHERE id IN ($ids) ORDER BY FIELD(id, $ids)
// $ids = 1,1,3

v dalsom kroku potom zistujem zamerania
potrebujem vypis (do pola) kde bude osoba.meno a jej zameranie (ale jedna osoba ma aj viac zamerani

dakujem za namety


Offline

Správca fóra
Správca fóra
MySQL SELECT IN() a rovnake hodnoty

Registrovaný: 27.07.07
Príspevky: 3948
Témy: 51
Bydlisko: Bratislava
Príspevok NapísalOffline : 25.08.2009 19:44

join







_________________
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
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 20.12.08
Prihlásený: 02.02.20
Príspevky: 28
Témy: 5
Bydlisko: Košice
Príspevok NapísalOffline : 25.08.2009 20:43

Kód:
SELECT meno, zameranie
FROM osoby, zameranie
WHERE osoba_id
IN ( 1, 1, 3 )
AND id = osoba_id


Offline

Užívateľ
Užívateľ
MySQL SELECT IN() a rovnake hodnoty

Registrovaný: 17.10.06
Prihlásený: 08.11.14
Príspevky: 37
Témy: 1
Bydlisko: blava
Príspevok NapísalOffline : 25.08.2009 20:48

nakoniec som to vyriesil klasickym spojenim tabuliek (vyhol som sa tej casti s IN() )

dakujem za rady


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


Podobné témy

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

v JavaScript, VBScript, Ajax

4

564

05.06.2011 11:04

chrono Zobrazenie posledných príspevkov

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

v Databázy

2

402

07.04.2014 6:52

XOLOO Zobrazenie posledných príspevkov

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

v Databázy

9

799

21.07.2017 18:19

lukas15 Zobrazenie posledných príspevkov

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

v PHP, ASP

4

483

09.10.2007 21:23

bruno.b Zobrazenie posledných príspevkov

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

v Databázy

0

262

17.06.2013 12:02

general667 Zobrazenie posledných príspevkov

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

v Databázy

3

359

05.06.2013 20:48

stenley Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. ako zmenit vystup - select mysql

v PHP, ASP

3

544

29.07.2008 8:02

stenley Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. mysql: 2 tabulky - jeden select

v Databázy

16

707

09.11.2014 22:03

JanoF Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Z mySql do <select>

v PHP, ASP

13

600

02.05.2009 23:32

suchy Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. SELECT z MySQL db medzi dvoma casmi

v Databázy

9

2110

11.07.2018 13:51

jumper Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Automaticke doplnanie <select> po kliknuti , vyber z MySql

v JavaScript, VBScript, Ajax

1

446

22.05.2015 12:44

stenley Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. P: HP ProOne 440 G5 23.8-in All-in-one PC

v Predám

0

125

21.02.2023 7:58

myso99 Zobrazenie posledných príspevkov

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

v HTML, XHTML, XML, CSS

3

554

04.01.2008 0:34

kmsa Zobrazenie posledných príspevkov

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

v Notebooky a netbooky

29

685

02.10.2012 15:29

maugggly Zobrazenie posledných príspevkov

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

v ATI/AMD grafické karty

3

440

29.08.2012 20:42

BOBO415 Zobrazenie posledných príspevkov

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

v PC skrinky a zdroje

2

342

09.03.2017 16:11

nitronus 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