Avatar billede rasmus_damberg Nybegynder
02. august 2006 - 14:33 Der er 7 kommentarer og
1 løsning

Slette records i min db.

Jeg skal have slettet de sidste nye 1500 records i en tabel. Det må være noget med at de sidste nye 1500 records skal sorteres efter id, og derefter slettes.

Hvordan gør jeg liiige det i min PhpMyAdmin?
Avatar billede arne_v Ekspert
02. august 2006 - 15:05 #1
hvis nyere mysql:

delete from xxxx where id in (select id from xxxx order by id desc limit 1500)

men test lige paa nogle mindre vigtige data foerst
Avatar billede rasmus_damberg Nybegynder
02. august 2006 - 15:15 #2
Hmm den fejlede i en test hvor jeg kun sletter 1:

Fejl

SQL-forespørgsel : 

DELETE FROM `news` WHERE id IN (

SELECT id
FROM `news`
ORDER BY id DESC
LIMIT 1
)

MySQL returnerede:


#1064 - You have an error in your SQL syntax.  Check the manual that corresponds to your MySQL server version for the right syntax to use near 'SELECT id
FROM  `news`
ORDER  BY id DESC
LIMIT 1  )' at line
Avatar billede rasmus_damberg Nybegynder
02. august 2006 - 15:24 #3
kører med phpMyAdmin 2.5.7-pl1
Avatar billede arne_v Ekspert
02. august 2006 - 16:20 #4
PHPMyAdmin version er ligegyldig

hvilken MySQL version er det ?

(lyder som om det er 3.23.x eller 4.0.x)
Avatar billede rasmus_damberg Nybegynder
02. august 2006 - 16:22 #5
4.0.21
Avatar billede arne_v Ekspert
04. august 2006 - 01:36 #6
det jeg kalder nyere MYSQL er 4.1 og fremad

surt show

hvis du kan lave en egen PHP side til at slette med maa du kunne

select id from xxxx order by id desc limit 1500

læse den sidste værdi

og så

delete from xxxx where id >= N
Avatar billede arne_v Ekspert
11. september 2006 - 23:38 #7
OK ?
Avatar billede arne_v Ekspert
06. oktober 2006 - 03:10 #8
??
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester