/ Forside / Teknologi / Udvikling / SQL / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
SQL
#NavnPoint
pmbruun 1704
niller 962
fehaar 730
Interkril.. 701
ellebye 510
pawel 510
rpje 405
pete 350
gibson 320
10  smorch 260
MySQL: where?
Fra : Kenneth Brun Nielsen


Dato : 17-08-02 22:21

Hej NG

Er der en mere kompakt/elegant måde at formulere flg. MySQL-forespørgsel?

mysql> SELECT * FROM tabel WHERE id = 2 OR id = 11 OR id = 20 OR id = 23
etc....

Jeg tænker på noget array/rækkefremstilling-noget..

På forhånd tak.

/Kenneth



 
 
TH (17-08-2002)
Kommentar
Fra : TH


Dato : 17-08-02 22:45

Hej,

> mysql> SELECT * FROM tabel WHERE id = 2 OR id = 11 OR id = 20 OR id = 23
> etc....

Hvor kommer ID'erne fra?

/TH



Kenneth Brun Nielsen (17-08-2002)
Kommentar
Fra : Kenneth Brun Nielsen


Dato : 17-08-02 22:54


> > mysql> SELECT * FROM tabel WHERE id = 2 OR id = 11 OR id = 20 OR id = 23
> > etc....
>
> Hvor kommer ID'erne fra?
>

Jeg er ikke helt sikker på, at jeg har forstået dig korrekt, men...

ID'erne ligger i et array, som via en HTML-formular er sendt til et
PHP-script. Mao.: et PHP-array.

Var det svar nok?

/Kenneth



TH (17-08-2002)
Kommentar
Fra : TH


Dato : 17-08-02 23:02

Hej,

> ID'erne ligger i et array, som via en HTML-formular er sendt til et
> PHP-script. Mao.: et PHP-array.

Ja..sådan set.

Jeg ville blot sige fx. "SELECT * FROM tabel WHERE id in (listen her)"

Ordet "in" bruges til om det ligger i listen der kommer efter "in"...ok?
Således kan man i den nye MySQL også sige fx. "SELECT * FROM tabel WHERE id
IN (SELECT id FROM IDTABLE WHERE etellerandet)"

/TH







Kenneth Brun Nielsen (17-08-2002)
Kommentar
Fra : Kenneth Brun Nielsen


Dato : 17-08-02 23:09

Hej TH

Mange tak for den hurtige respons

> Jeg ville blot sige fx. "SELECT * FROM tabel WHERE id in (listen her)"
>

Jeg er newbie: når du skriver "(listen her)", mener du så at jeg skal skrive
elementerne/værdierne adskilt af kommaer eller er det blot navnet på
array'et?

> Ordet "in" bruges til om det ligger i listen der kommer efter "in"...ok?
> Således kan man i den nye MySQL også sige fx. "SELECT * FROM tabel WHERE
id
> IN (SELECT id FROM IDTABLE WHERE etellerandet)"
>

OK. Her på stedet kører vi MySQL 3.23.43 - er det nyt nok?

/KBN



Jakob Møbjerg Nielse~ (18-08-2002)
Kommentar
Fra : Jakob Møbjerg Nielse~


Dato : 18-08-02 08:36

Kenneth Brun Nielsen wrote:
> OK. Her på stedet kører vi MySQL 3.23.43 - er det nyt nok?

Nej. Subselects er først med fra v.4 (eller også er det 4.1, kan ikke
huske det).

--
Jakob Møbjerg Nielsen | "Five exclamation marks, the
jakob@dataloger.dk | sure sign of an insane mind."
http://www.jakobnielsen.dk/ | -- Terry Pratchett, Reaper Man
Jeg søger et fuldtidsjob som programmør. Tag et kig på hjemmesiden.



Kenneth Brun Nielsen (18-08-2002)
Kommentar
Fra : Kenneth Brun Nielsen


Dato : 18-08-02 12:20


"Jakob Møbjerg Nielsen" <jakob@dataloger.dk> skrev i en meddelelse
news:ajnimc$73s$1@sunsite.dk...
> Kenneth Brun Nielsen wrote:
> > OK. Her på stedet kører vi MySQL 3.23.43 - er det nyt nok?
>
> Nej. Subselects er først med fra v.4 (eller også er det 4.1, kan ikke
> huske det).
>

OK - Tak for hjælpen allesammen!

Fortsat god weekend.

/Kenneth



Martin Christensen (17-08-2002)
Kommentar
Fra : Martin Christensen


Dato : 17-08-02 23:49

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

"Kenneth Brun Nielsen" <kenneth@pbk.dk> writes:

>> Jeg ville blot sige fx. "SELECT * FROM tabel WHERE id in (listen her)"
> Jeg er newbie: når du skriver "(listen her)", mener du så at jeg skal skrive
> elementerne/værdierne adskilt af kommaer eller er det blot navnet på
> array'et?

MySQL har en ikke så ringe manual.

SQL92 foreskriver, at IN anvender en kommaadskilt liste som du rigtigt
nok gættede. Altså SELECT * FROM tabel WHERE id IN (foo, bar, baz).
Det ville ikke give så megen mening at sende variabelnavnet på arrayen
til databasen, da den jo ikke ved, hvad dit PHP-script tænker. Men det
skulle ikke undre mig, om PHP har en funktion til at omskrive en array
til en kommasepararet liste, som kan lette dit arbejde.

Martin

- --
Homepage: http://www.cs.auc.dk/~factotum/
GPG public key: http://www.cs.auc.dk/~factotum/gpgkey.txt
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.0.6 (GNU/Linux)
Comment: Using Mailcrypt+GnuPG <http://www.gnupg.org>

iEYEARECAAYFAj1e0tUACgkQYu1fMmOQldUBHQCeNM9lfCyYA5rYq71DSZtU8ygE
r5YAmwS5FnD6aGHNjUJjWhu/FkjasHB+
=Lvai
-----END PGP SIGNATURE-----

Søg
Reklame
Statistik
Spørgsmål : 177552
Tips : 31968
Nyheder : 719565
Indlæg : 6408849
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste