我想知道如何在SQL Server中对下表中的“code”列进行等效操作,并在PostgreSQL中实现它。
CREATE TABLE test( id INT IDENTITY(1,1) NOT NULL, code AS ('P' + RIGHT('0000' + CONVERT(VARCHAR, id), (4))) );
6jjcrrmo1#
Postgres使用符合SQL标准的标识列。因此identity(1,1)不起作用。生成的列也可以用类似的方法来完成。
identity(1,1)
CREATE TABLE test ( id INT generated always as identity not null, code text generated always AS ('P'||lpad(id::text, 4, '0')) stored );
1条答案
按热度按时间6jjcrrmo1#
Postgres使用符合SQL标准的标识列。因此
identity(1,1)
不起作用。生成的列也可以用类似的方法来完成。