Dynamische SQL query op tabel

Pagina: 1
Acties:

Acties:
  • 0 Henk 'm!

  • Erhnam
  • Registratie: Januari 2000
  • Laatst online: 14-10 23:04

Erhnam

het Hardware-Hondje :]

Topicstarter
Ik zit met een lastig vraagstuk waar ik niet helemaal uitkom. Via SQL en eventueel met PHP moet ik uit een tabel het juiste data element halen. In de tabel komt een data element meerdere malen voor. Het aantal keren is niet vast in de tabel. Een data element kan dus 3, 4 maar ook 9 keer voorkomen. Bijgaand een voorbeeld;

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Data | Member
123 A1
124 A2
125 A3
126 A2
123 B1
124 B1
125 B3
126 B2
123 C1
124 C2
125 C3
126 C4
127 C5


Wat ik weet zijn alleen de member waarden. Dus uit een resultaat krijg ik een Array terug met A2,B1,C2. Dit resultaat wil ik gebruiken om met behulp van SQL uit de bovenstaande tabel de waarde 124 op te halen. Ik probeer dit nu door eerst A2 op te halen en vervolgens B1 en de A2 uit te sluiten, maar de performance zakt al snel in elkaar. In de tabel zitten namelijk 200.000 van dit soort rijen. Iemand een idee hoe je dit aanpakt?

http://www.xbmcfreak.nl/


Acties:
  • 0 Henk 'm!

  • NielsNL
  • Registratie: Januari 2002
  • Laatst online: 14-10 11:09

NielsNL

DigiCow

Wat wil je vervolgens met je waardes gaan doen?
Nu kun je gewoon SELECT * from TABLE WHERE Data = '124' AND Member IN ('A2', 'B1', 'C2')
Nu kun je gewoon SELECT * from TABLE WHERE Data = '124' AND Member = 'A2' doen.

[ Voor 33% gewijzigd door NielsNL op 13-04-2015 20:33 ]

M'n Oma is een site aan het haken.


Acties:
  • 0 Henk 'm!

  • Erhnam
  • Registratie: Januari 2000
  • Laatst online: 14-10 23:04

Erhnam

het Hardware-Hondje :]

Topicstarter
NielsNL schreef op maandag 13 april 2015 @ 20:29:
Wat wil je vervolgens met je waardes gaan doen?
Nu kun je gewoon SELECT * from TABLE WHERE Data = '124' AND Member IN ('A2', 'B1', 'C2')
Nu kun je gewoon SELECT * from TABLE WHERE Data = '124' AND Member = 'A2' doen.
A2 komt meerdere malen voor. Met WHERE IN krijg ik ook andere items mee. Moet dus het dus indikken..

http://www.xbmcfreak.nl/


Acties:
  • 0 Henk 'm!

  • NielsNL
  • Registratie: Januari 2002
  • Laatst online: 14-10 11:09

NielsNL

DigiCow

Maar nu selecteer je een rij die 124 én A2 bevat, dat zou toch uniek moeten zijn?

M'n Oma is een site aan het haken.


Acties:
  • 0 Henk 'm!

  • Fish
  • Registratie: Juli 2002
  • Niet online

Fish

How much is the fish

Zoek eens op group by

wel ff wat beter je best doen .

Iperf


Acties:
  • 0 Henk 'm!

  • Erhnam
  • Registratie: Januari 2000
  • Laatst online: 14-10 23:04

Erhnam

het Hardware-Hondje :]

Topicstarter
Fish schreef op maandag 13 april 2015 @ 20:56:
Zoek eens op group by

wel ff wat beter je best doen .
Thx. Een group met een WHERE IN en een count op het aantal combinaties zou het wel moeten doen. Dank!

http://www.xbmcfreak.nl/

Pagina: 1