Django aracılığıyla eriştiğim büyük bir PostgreSQL tablom var. Django'nun ORM'si pencere işlevlerini desteklemediğinden, bir pencere işlevinin sonuçlarını tabloya düzenli bir sütun olarak pişirmem gerekiyor. Böyle bir şey yapmak istiyorum:Bir güncelleştirme deyiminde pencere işlevlerini kullanma
UPDATE table_name
SET col1 = ROW_NUMBER() OVER (PARTITION BY col2 ORDER BY col3);
Ama ERROR: cannot use window function in UPDATE
kimse alternatif bir yaklaşım önerebilir olsun? Ihtiyacım olan .filter() gibi daha fazla ORM özelliklerini desteklemeyen bir RawQuerySet döndürdüğünden, Django'nun .raw() yöntemiyle pencere işlevi sözdizimini geçmek uygun değildir.
Teşekkürler.
Kendine katılmaya ihtiyacınız olduğunu düşünmüyorum? SQL Server'da neyin çalıştığı üzerine kurduğum gibi yanlış olabilirim! –
@Martin: İki tablo seçiyorsunuz, bir tanesi UPDATE 'tablename' üzerinden, diğeri ise 'FROM tablename' ifadesinde. Eğer açıkça katılmazsanız, bir Kartezyen ürün üretecek. – Max
er, hayır ben değilim! –