タイプに関係なく、指定されたすべての行をmd5()するSQLクエリ(またはplpgsql)を作成したいと思います。ただし、以下では、1つがnullの場合、ハッシュはnullになります。
UPDATE thetable
SET hash = md5(accountid || accounttype || createdby || editedby);
後でハッシュを使用して一意性を比較しているため、このユースケースではnullハッシュは機能しません。
問題は、nullの連結を処理する方法でした。例えば:
thedatabase=# SELECT accountid || accounttype || createdby || editedby
FROM thetable LIMIT 5;
1Type113225
<NULL>
2Type11751222
3Type10651010
4Type10651
タイプがわかっていれば、colesceまたはCASEステートメントを使用できます。ただし、テーブルがたくさんあるので、すべての列のタイプを事前に知ることはできません。