🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Thread View: nl.comp.programmeren
2 messages
2 total messages Started by Snuyt Fri, 02 Apr 2004 14:55
query
#454
Author: Snuyt
Date: Fri, 02 Apr 2004 14:55
25 lines
1834 bytes
Hallo,

ik heb een tabel:

tabel
id	Ander_id	waarde

Ander_id is een verwijzing naar een id in een andere tabel

het kan dus zijn dat er meerdere rijen zijn met Ander_id dezelfde 
waarde. Ik wil nu 1 rij verwijderen met Ander_id=1 (of een andere 
waarde). Ik gebruik volgende query, maar hij geeft een foutmelding:

DELETE FROM tabel WHERE Ander_id=1 LIMIT 1

hij kankert over die LIMIT 1. Dat is volgens mij toch om te specifieren 
dat er maar 1 rij mag verwijderd worden. Kan iemand mij de fout 
vertellen, en nog beter, een oplossing geven.

(Akkoord, ik kan via via te weten komen welk (uniek) id er moet 
verwijderd worden, zonder die LIMIT dan, maar dat is een omweg, en dat 
wil ik niet)

bedankt,
	Snuyt
Re: query
#455
Author: Dr.Ruud
Date: Fri, 02 Apr 2004 17:54
34 lines
2110 bytes
Toen ik Snuyt kietelde, kwam er dit uit:

> tabel
> id Ander_id waarde
> [...]
> het kan dus zijn dat er meerdere rijen zijn met Ander_id dezelfde
> waarde. Ik wil nu 1 rij verwijderen met Ander_id=1 (of een andere
> waarde). Ik gebruik volgende query, maar hij geeft een foutmelding:
>
> DELETE FROM tabel WHERE Ander_id=1 LIMIT 1


Probeer hier eens wat van (allemaal ongetest)

DELETE * FROM tabel WHERE Ander_id=1 LIMIT 1

DELETE * FROM (SELECT tabel WHERE Ander_id=1 LIMIT 1)

DELETE A.* FROM (SELECT tabel AS A WHERE Ander_id=1 LIMIT 1)

DELETE * FROM tabel WHERE Ander_id=1 AND id = (SELECT Min(Id) FROM tabel
WHERE Ander_Id=1)

DELETE * FROM tabel WHERE Ander_id=1 AND id = (SELECT Min(Id) FROM tabel
WHERE Ander_Id=1 GROUP BY Ander_id)

Die laatste 2 zoeken dus het Minimum-ID op, ik neem aan dat je die row
wilt verwijderen?

-- 
Affijn, Ruud   `  -  �
               + ` � *
                 � `
               �  =  `
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads