Bazı eski MySQL sorgularını PostgreSQL'e aktarmaya çalışıyorum, ancak bununla ilgili sorun yaşıyorum:
DELETE FROM logtable ORDER BY timestamp LIMIT 10;
PostgreSQL, silme sözdiziminde sıralamaya veya sınırlamalara izin vermez ve tablonun birincil anahtarı olmadığı için alt sorgu kullanamıyorum. Ek olarak, sorgunun tam olarak verilen sayıyı veya kayıtları sildiği davranışı korumak istiyorum - örneğin, tablo 30 satır içeriyorsa ancak hepsi aynı zaman damgasına sahipse, önemli olmasa da yine de 10'u silmek istiyorum hangi 10.
Yani; PostgreSQL'de sıralama ile sabit sayıda satırı nasıl silerim?
Düzenle: Birincil anahtar olmaması, log_idsütun veya benzeri olmadığı anlamına gelir . Ah, eski sistemlerin eğlenceleri!
alter table foo add column id serial primary key.