我有一个大型数据库,我想做一些逻辑来更新新字段。
主键id
用于表 harvard_assignees
逻辑是这样的
- 选择所有基于的记录
id
- 对于每条记录(WHILE),
if (state is NOT NULL && country is NULL), update country_out = "US" ELSE update country_out=country
我将步骤 1 视为 PostgreSQL 查询,将步骤 2 视为函数。只是想找出使用确切语法在本地实现的最简单方法。
==== 第二个功能更有趣,需要(我相信)DISTINCT
:
- 查找所有 DISTINCT foreign_keys(pat_type,patent 的二元键)
- 计数包含该值的记录(例如,n=3 记录具有 fkey "D","388585")
- 更新这 3 条记录以将百分比标识为 1/n(例如,更新 3 条记录,设置百分比 = 1/3)