我有以下疑问:
seq = select([tab_setup.columns.ID]).order_by(tab_setup.columns.ID).limit(1)
sel = select([tab_Global.columns.ID_UNIQUE.label('DL_ID'), tab_Global.columns.CV_CNV.label('DL_Conv')]) \
.where(tab_Global.columns.CV_CNV.isnot(None))
stmt = tab_setup.insert().from_select(['DL_ID', 'DL_Conv',next_value(Sequence(seq))] , sel)
据我已经理解的那样,问题是自动填充表“tab_setup”内的ID(自动增量)场相关。这是值传递正确的方法是什么?
ID字段是1,每行一个正常的自动递增字段。
只使用序列功能,它正提出一些建议使用一个错误“next_value”
谢谢
我找到的解决方案是在选择查询地址:
func.row_number()。在(ORDER_BY = tab_Global.columns.ID_UNIQUE))。标签( 'ID')
这将产生对任何行的序列号;然后如果起始号码不是1 I创建变量start_from = 10,并完成上面:(start_from + func.row_number()...)