Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Usuń wszystkie wiersze z wyjątkiem pierwszego N z tabeli posiadającej jedną kolumnę

Jeśli możesz zamówić swoje rekordy przez friends_name , a jeśli nie ma duplikatów, możesz użyć tego:

DELETE FROM names
WHERE
  friends_name NOT IN (
    SELECT * FROM (
      SELECT friends_name
      FROM names
      ORDER BY friends_name
      LIMIT 10) s
  )

Zobacz skrzypce tutaj .

Możesz też użyć tego:

DELETE FROM names ORDER BY friends_name DESC
LIMIT total_records-10

gdzie total_records to (SELECT COUNT(*) FROM names) , ale musisz to zrobić za pomocą kodu, nie możesz umieścić licznika w klauzuli LIMIT zapytania.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Konfigurowanie zdalnego połączenia z bazą danych MySQL

  2. Zapytanie / daty MYSQL starsze niż 1 tydzień temu (wszystkie daty i godziny w UTC)

  3. Unikalne adresy IP w systemie głosowania

  4. Czy ustawić domyślną wartość dla kolumny typu DATE na bieżącą datę bez części czasowej?

  5. Konwertuj plik BibTex na wpisy w bazie danych za pomocą Pythona