Sql server 不允许从数据类型datetime隐式转换为数据类型float
我被跟踪了 不允许从数据类型datetime隐式转换为数据类型float,表dbo.BillRegister',列“SGSTPer”。使用CONVERT函数运行此查询 但SGST的数据类型在sourse表中不是datetimeSql server 不允许从数据类型datetime隐式转换为数据类型float,sql-server,Sql Server,我被跟踪了 不允许从数据类型datetime隐式转换为数据类型float,表dbo.BillRegister',列“SGSTPer”。使用CONVERT函数运行此查询 但SGST的数据类型在sourse表中不是datetime 请帮忙。提前感谢您似乎错过了列与值的映射。请按照BillRegister表列的正确顺序传递值 谢谢, Amrut请,请重新格式化那糟糕的SQL。将整个查询张贴在一行上会使其完全无法读取。。。。当你这么做的时候,把它简化成一个新的。请帮助我说明@FromDate和@ToDa
请帮忙。提前感谢您似乎错过了列与值的映射。请按照BillRegister表列的正确顺序传递值 谢谢,
Amrut请,请重新格式化那糟糕的SQL。将整个查询张贴在一行上会使其完全无法读取。。。。当你这么做的时候,把它简化成一个新的。请帮助我说明@FromDate和@ToDate是如何声明的。您有从BillMain BM选择*的语法。FROM不是有效的语法。此外,由于您使用了SELECT*,我们无法看到正在使用哪些列。你能为你的桌子张贴你的DDL吗?
CREATE PROC proc_tblBillRegisterExtended (@FromDate AS DATETIME, @ToDate AS DATETIME, @CustomerID AS NUMERIC = NULL, @UnitLoc AS NUMERIC = NULL)
BEGIN
INSERT INTO BillRegister
SELECT * FROM BillMain BM
JOIN BillDetails BD ON BM.BillMainID = BD.BillMainID
JOIN ProductMaster PM ON BD.ProductID = PM.ProductID
JOIN CustomerMaster CM ON CM.CustomerID=BM.CustomerID
JOIN EnumCollections EC ON (BM.Status = EC.ENUMVALUE AND EC.EnumType =1)
WHERE
BM.UnitLoc = @UnitLoc
AND BM.BillDate BETWEEN @FromDate AND @ToDate
UNION ALL
SELECT * FROM FROM BillMain BM
JOIN BillSampleDetails BSD ON BM.BillMainID = BSD.BillMainID
JOIN ListMaster LM ON BSD.SampleID = LM.ListID
JOIN CustomerMaster CM ON CM.CustomerID=BM.CustomerID
JOIN EnumCollections EC ON (BM.Status = EC.ENUMVALUE AND EC.EnumType =1)
WHERE
BM.UnitLoc = @UnitLoc
AND BM.BillDate BETWEEN @FromDate AND @ToDate
END