MYSQL 5.7.5:
生成された列
を使用して目標を達成できます。 および
テストされていません
CREATE TABLE TEST (
ProdID VARCHAR(20) AS CONCAT('PR','',PID) STORED,
PID INT auto_increment)
あなたの便宜のために、
MSSQL:
最も簡単な方法は、単純に計算列を作成することです。 IDENTITY列と組み合わせて「計算」列と呼ばれるものを使用します。
CREATE TABLE Test
(
ProdID AS CAST('PR'+RIGHT('000'+CAST(RowNum AS VARCHAR(3)),3) AS VARCHAR(30)) PERSISTED
,ProdName VARCHAR(30)
,RowNum INT IDENTITY(1,1)
);
INSERT INTO Test (ProdName)
SELECT 'Thread' UNION ALL
SELECT 'Button Thread' UNION ALL
SELECT 'Coat Thread';
SELECT ProdID, ProdName FROM Test;
これにより、次の結果が返されます(自動インクリメントが機能したことに注意してください)。
ProdID ProdName
------------------------------ ------------------------------
PR001 Thread
PR002 Button Thread
PR003 Coat Thread