【发布时间】:2015-10-28 02:05:58
【问题描述】:
这个查询工作正常
select * from
(select meas.Inspection_No, case
when ISNUMERIC(meas.InspectionValue) = 1 then
cast(meas.InspectionValue as decimal(10,2))
else 0 End as IVEKVol, meas.InspectionValue, spec.Name, spec. [Description], meas.LastDate, meas.ID from
(select ism.InspectionSpecificationMeasurementID, ism.Name, ism. [Description] from PT_InspectionSpecification [is]
inner join PT_InspectionSpecification_Measurement ism on [is].InspectionSpecification_No = ism.InspectionSpecification_No
where [is].PartDescription = 'Anode Dispense' and [is].InspectionSpecification_type = 'Control Plan' and ism.Name LIKE 'I-IVEKVol Recorded%') spec
inner join
PT_InspectionItem_Measurement meas on spec.InspectionSpecificationMeasurementID = meas.InspectionSpecificationMeasurementID) data
但是当我添加 where 子句“where data.IVEKVol > 0”时,我收到错误“将数据类型 nvarchar 转换为数字时出错”
select * from
(select meas.Inspection_No, case
when ISNUMERIC(meas.InspectionValue) = 1 then
cast(meas.InspectionValue as decimal(10,2))
else 0 End as IVEKVol, meas.InspectionValue, spec.Name, spec. [Description], meas.LastDate, meas.ID from
(select ism.InspectionSpecificationMeasurementID, ism.Name, ism. [Description] from PT_InspectionSpecification [is]
inner join PT_InspectionSpecification_Measurement ism on [is].InspectionSpecification_No = ism.InspectionSpecification_No
where [is].PartDescription = 'Anode Dispense' and [is].InspectionSpecification_type = 'Control Plan' and ism.Name LIKE 'I-IVEKVol Recorded%') spec
inner join
PT_InspectionItem_Measurement meas on spec.InspectionSpecificationMeasurementID = meas.InspectionSpecificationMeasurementID) data
where data.IVEKVol > 0
【问题讨论】:
标签: sql sql-server