我是SQL
的新人。任何人都可以帮我解决我的问题。
我想在GenerateproductNumber列中生成一个数字,如
PDT-1201/1-P1,PDT-1201/1-P2基于ProductNumber列。
答案 0 :(得分:0)
也许,你在寻找:
SELECT *,
'PDT-1201/1-P'+CONVERT(VARCHAR(10), ROW_NUMBER() OVER(PARTITION BY ProductNumber ORDER BY ID)) [GenerateproductNumber]
FROM <table_name>;
结果:
ID CustomerID Supplier Product ProductNumber GenerateproductNumber
1 2 ABC PVT LTD Jeans 1 PDT-1201/1-P1
2 3 Pk PVT LTD Jeans 1 PDT-1201/1-P2
答案 1 :(得分:0)
你可以使用update命令(如果没有在GenerateproductNumber上应用null约束) 首先在表中插入记录,然后更新GenerateproductNumber列
UPDATE your_table_name SET GenerateproductNumber = 'PDT-1201/1-P'||char(ProductNumber)
答案 2 :(得分:0)
如果GeneratedProductNumber列的数据/值依赖于其他列值/数据,或者在计算时,您可以在sql server中使用计算列概念。
请参阅以下链接以获取更多信息: -
http://www.c-sharpcorner.com/article/computed-columns-in-sql-server/