array gebruiken in mysql select

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Maurice van Ulden

Maurice van Ulden

04/09/2006 13:43:00
Quote Anchor link
Beste lezer,

Graag zou ik een eerder gedefinineerde verzameling waarden gebruiken in een mysql select query.

Deze notatie blijkt niet te werken:
$getallen = array(30,40,50,60);
$selectie = "SELECT * FROM tabel WHERE getal = $getallen";

Ik wil dus alle records waar getal 30,40,50 of 60 en voor arrays van wisselende omvang een eenvoudige notatie...


Wie weet hoe het wel moet?

Groeten en dank,

Maurice.
 
PHP hulp

PHP hulp

12/01/2025 13:44:47
 
- -

- -

04/09/2006 13:50:00
Quote Anchor link
$selectie = "SELECT * FROM tabel WHERE getal = 30 OR getal = 40 OR getal = 50 OR getal = 60";
 
Klaasjan Boven

Klaasjan Boven

04/09/2006 14:26:00
Quote Anchor link
$selectie = "SELECT * FROM tabel WHERE getal IN(30,40,50,60)

Moet ook prima kunnen

OF

$selectie = "SELECT * FROM tabel WHERE getal LIKE %0
 
Maurice van Ulden

Maurice van Ulden

04/09/2006 14:26:00
Quote Anchor link
Dank voor uw reactie, maar de getallen in $getallen dienen slechts even als voorbeeld:

Ik wil een eerder gegenereerde reeks getallen, de array $getallen, deze lijst is steeds verschillend en bevat soms tientallen verschillende getallen, op een makkelijke manier in een select plaatsen. Ik had gehoopt dat
$selectie = "SELECT * FROM tabel WHERE getal = $getallen";
zou werken maar dat is niet zo... ik ben op zoek naar een notatiewijze die werkt voor een array die steeds weer anders is.
 
Robert Deiman

Robert Deiman

04/09/2006 14:38:00
Quote Anchor link
Kan het dan niet zo:

$selectie = "SELECT * FROM tabel WHERE getal IN(".$array.")";
 
- SanThe -

- SanThe -

04/09/2006 14:50:00
Quote Anchor link
@Robert: Ik denk eigenlijk niet dat jouw oplossing werkt. Je kan het wel zo doen:

$selectie = "SELECT * FROM tabel WHERE getal IN(" . implode(",", $array) . ")";
 
Maurice van Ulden

Maurice van Ulden

04/09/2006 14:58:00
Quote Anchor link
Allen geweldig bedankt voor het meedenken!
De oplossing van SanThe werkt helemaal goed!

Groeten van Maurice.
 
Robert Deiman

Robert Deiman

04/09/2006 15:25:00
Quote Anchor link
Je hebt helemaal gelijk SanThe... bij mij zou er staan:
SELECT * FROM tabel WHERE getal IN(array);

Jouw oplossing is helemaal top ;)
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.