我有一个很大的PostgreSQL表,可以通过Django访问.因为Django的ORM不支持窗口函数,所以我需要将窗口函数的结果作为常规列烘焙到表中.我想这样做:
UPDATE table_name
SET col1 = ROW_NUMBER() OVER ( PARTITION BY col2 ORDER BY col3 );
但我得到ERROR: cannot use window function in UPDATE
分
有没有人能提出另一种方法?通过Django的.raw()方法传递窗口函数语法是不合适的,因为它返回一个RawQuerySet,它不支持进一步的ORM特性,如我需要的.filter().
谢谢你.