| FAQ |
| Kalender |
|
|
#1 | ||
|
|||
|
Mycket flitig postare
|
DELETE FROM Login WHERE NOT IN (SELECT * FROM Login ORDER BY timeOfLogin DESC LIMIT 3)
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 'IN (SELECT * FROM Login ORDER BY timeOfLogin DESC LIMIT 3)' at line 1 det jag vill göra, är att radera alla poster som INTE finns med i "SELECT * FROM Login ORDER BY timeOfLogin DESC LIMIT 3" |
||
|
|
Svara med citat
|
|
|
#2 | ||
|
|||
|
Klarade millennium-buggen
|
Tror du missade WHERE id, och prova med NOT EXISTS: http://stackoverflow.com/questions/1...xpected-result
Eventuellt måste du också skriva WHERE a.id = b.id enligt nedan. Kod:
DELETE FROM login a WHERE id NOT EXISTS ( SELECT b.id FROM login b WHERE a.id = b.id ORDER BY b.timeoflogin DESC LIMIT 3 ) Senast redigerad av Timofey den 2012-08-06 klockan 14:23 |
||
|
|
Svara med citat
|
|
|
#3 | |||
|
||||
|
Bara ett inlägg till!
|
Citat:
1) För att kunna köra denna typen av subquery så måste du specificera kolumnnamnet i subqueryn. Ex: Kod:
SELECT * FROM tabell WHERE id NOT IN (SELECT tabell_id FROM tabell2) Kod:
DELETE FROM Login ORDER BY timeOfLogin DESC LIMIT 3 |
|||
|
|
Svara med citat
|
|
|
#4 | ||
|
|||
|
Klarade millennium-buggen
|
|||
|
|
Svara med citat
|
|
|
#5 | |||
|
||||
|
Bara ett inlägg till!
|
||||
|
|
Svara med citat
|
| Svara |
|
|