czy istnieje polecenie SQL do usunięcia pierwszych X wierszy tabeli bazy danych?Usuń pierwsze X wiersze bazy danych
Mam tabelę bazy danych zawierającą niektóre informacje, ale bez wartości id lub auto-inkrementacji i program, który przetwarza pierwsze X wiersze tej tabela. Następnie te X wiersze muszą zostać usunięte. Więc średnia zapytania to:
DELETE FROM table WHERE something = value;
tak, czy istnieje sposób zbudować kwerendę jak:
DELETE FROM table WHERE rownumber <= X;
Próbowałem tego polecenia, ale nic się nie dzieje do bazy .. Czy masz jakaś wskazówka?
Zachowaj ostrożność podczas wykonywania tej czynności. Kolejność wyboru może się zmienić, jeśli dodasz indeks lub coś podobnego. Serwer SQL najprościej wybierze, gdy nie doda klauzuli where. – Romo
To prawda. Obowiązują standardowe wymagania "ORDER BY". Zmontowałem to, aby to odzwierciedlić. – Polynomial
Dzięki za odpowiedź! Próbowałem tego i niestety działa tylko wtedy, gdy podano warunek. Więc teraz używam 'DELETE FROM table WHERE a_field> 0 LIMIT X;' To działa do tej pory. Dziękujemy :-) – coroner