select
'WO-' + OrderNo + 'LN-' + convert(nvarchar(10), OrderLine) + 'BN-' + convert(nvarchar(10),
ROW_NUMBER() OVER (PARTITION BY OrderNo ORDER BY id, OrderNo)) as orderno,
distinct PartNo, opno, Quantity,
requiredPartno, requiredquantity, level
from
VW_batching
我认为问题与"不同"仅如评论中提到的某些
让我简短地解释你,
我有一张名为'tblBilling'
当我执行" SELECT * FROM tblBilling
"时,输出为: -
EngID Tower Billing Amt
100 ICS Y 5000
100 EDT Y 7777
100 ICS N 2000
现在,当我使用" SELECT DISTINCT EngID , Tower FROM tblBilling
"输出时: - 是: -
EngID Tower
100 EDT
100 ICS
但是当我使用" SELECT Tower,Distinct EngID FROM tblBilling
"时,它向我显示了一个错误: -
Incorrect syntax near the keyword 'Distinct'.
因此,当我们在Select语句中有多个列时,首先写下不同的列,然后将其余写。尝试以下操作: -
select distinct PartNo,'WO-'+ OrderNo + 'LN-'+
convert(nvarchar(10),OrderLine) + 'BN-'+ convert(nvarchar(10),
ROW_NUMBER() OVER (PARTITION BY OrderNo ORDER BY id, OrderNo)) as orderno,
opno, Quantity, requiredPartno, requiredquantity, level
from VW_batching
我对此不完全确定,但是我认为这是T-SQL非案例敏感性的问题。
您使用的是OrderNo
作为列,并将名为orderno
的Allias分配给另一列。
尝试类似:
select 'WO-'+ OrderNo + 'LN-'+
convert(nvarchar(10),OrderLine) + 'BN-'+ convert(nvarchar(10),
ROW_NUMBER() OVER (PARTITION BY OrderNo ORDER BY id, OrderNo)) as dispatchNo,
distinct PartNo, opno, Quantity, requiredPartno, requiredquantity, level
from VW_batching