[MYSQL] Resultaat bepalen

Pagina: 1
Acties:

  • om3ega
  • Registratie: Maart 2001
  • Laatst online: 08-05 09:08
Hallo Tweakers,

Ik zou niet weten hoe ik hetgeen wat ik wil zou moeten noemen. Dat is wellicht ook het probleem wat ik heb om te vinden hoe ik het op moet lossen.

Kan iemand mij even op de juiste weg helpen. Het is waarschijnlijk simpel , maar goed.. dat is met alles zo als je het weet. Ik zoek een manier om het volgende voor elkaar te krijgen.

Check dit (in excel -> html) gegenereerde tabelletje even . (ik zie dat Mozilla een beetje flipt met de weergave , maar na een paar x f5 werkt het wel goed :? )

Het resultaat zoals ik het wil hebben staat onderin. Je ziet dat ik 2 nieuwe colommen wil resulten (contact_number_type_1 en 2) ..

Nu weet ik dat je in je select statement met AS een nieuwe colom naam kan defineren , maar hoe krijg ik dan de informatie zoals ik het wil hebben?

Wellicht een linkje of voorbeeldje wat me opweg kan helpen :)

[ Voor 7% gewijzigd door om3ega op 03-04-2005 13:06 ]


  • Gert
  • Registratie: Juni 1999
  • Laatst online: 05-12-2025
Als je gewoon in woorden neerzet wat je wil staat je sql statement er al bijna, dat is een goed begin.

  • om3ega
  • Registratie: Maart 2001
  • Laatst online: 08-05 09:08
Ik heb je zin 4x gelezen , maar ik begrijp je niet sorry :) .. Wat moet ik neerzetten? Moet ik omschrijven in het NL wat ik wil? Ik dacht dat het tabelletje eigenlijk wel voorzich sprak :) ..

  • xiD
  • Registratie: Oktober 2003
  • Laatst online: 21-04 11:20

xiD

12345

om3ega schreef op zondag 03 april 2005 @ 13:18:
Ik heb je zin 4x gelezen , maar ik begrijp je niet sorry :) .. Wat moet ik neerzetten? Moet ik omschrijven in het NL wat ik wil? Ik dacht dat het tabelletje eigenlijk wel voorzich sprak :) ..
Hij bedoeld dat als je in 'normale' woorden zegt wat je met je query wilt bereiken je hele query al bijna voor je hebt staan

67890


  • charlie
  • Registratie: Oktober 2000
  • Laatst online: 07-03 11:08

charlie

?*?

Als je MS acess hebt, kan je hiermee heel goed experimenteren. Probeer eens je met de visual builder je query op te bouwen, en kijk dan eens naar het resultaat van de SQL code.
Ik zou een join maken van de eerste tabel met de 2X een subquery van de tweede : 1X met het ene type nummer, een tweede keer met het andere...

  • om3ega
  • Registratie: Maart 2001
  • Laatst online: 08-05 09:08
Ja , maar hoe bouw ik dan de mysql query op ? Ik heb het idee dat ik namelijk met een query in een query zit omdat ik soms meerdere contact info's heb bij 1 persoon ...
Daar ben ik ff de weg kwijt..

Ok Charlie23 .. tnx
Ik ga eens even kijken of ik met een query builder wat kan doen..
verdere tips zijn welkom :)

[ Voor 25% gewijzigd door om3ega op 03-04-2005 13:25 ]


  • NMe
  • Registratie: Februari 2004
  • Laatst online: 15-04 22:07

NMe

Quia Ego Sic Dico.

om3ega schreef op zondag 03 april 2005 @ 13:24:
Ja , maar hoe bouw ik dan de mysql query op ? Ik heb het idee dat ik namelijk met een query in een query zit omdat ik soms meerdere contact info's heb bij 1 persoon ...
Daar ben ik ff de weg kwijt..
Wat jij zoekt, is een join, waarschijnlijk in combinatie met een union. Ik ben zelf niet zo goed met unions, maar je zou dit kunnen proberen:
code:
1
2
3
4
5
6
7
8
9
10
11
SELECT members.members_Name,
       members.members_id,
       contact_info.contact_number AS contact_number_type_1,
FROM   members INNER JOIN contact_info
ON     members.members_id = contact_info.contact_members_id
WHERE  contact_info.contact_number < 10000
UNION DISTINCT
SELECT contact_info.contact_number AS contact_number_type_2
FROM   members INNER JOIN contact_info
ON     members.members_id = contact_info.contact_members_id
WHERE  contact_info >= 10000

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


  • om3ega
  • Registratie: Maart 2001
  • Laatst online: 08-05 09:08
Tnx -NMe-

Wat jij niet wist is dat ik er niet vanuit mag gaan dat contact_info >= 10000 externe nummers zijn :) .. maar dat geeft niet. Ik ga even met wat queries spelen en heb al een resultaat wat aansluit bij wat ik wil ... bedankt allemaal voor het meedenken..

Verwijderd

Als je MySQL versie subselects ondersteunt, zou je hier een heel eind mee kunnen komen:
SQL:
1
2
3
4
5
6
7
8
9
10
11
12
SELECT members_name,
       members_id,
       (SELECT contact_info.contact_number 
        FROM   contact_info
        WHERE  contact_members_id = members.members_id
        AND    member_contact_type_id = 1) AS contact_number_type_1,
       (SELECT contact_info.contact_number 
        FROM   contact_info
        WHERE  contact_members_id = members.members_id
        AND    member_contact_type_id = 2) AS contact_number_type_2
FROM   members 
ORDER BY members_id
Pagina: 1