我在MSSQl中有一个存储过程,我想把它写到我的sql中,请帮助或建议我不能在Mysql中使用XML函数。
存储进程:
ALTER PROCEDURE uspGetProductDetailsCSV (
@sku NVARCHAR(MAX)
)
AS
BEGIN
-
SELECT T.C.value('.', 'NVARCHAR(100)') AS [SKU]
INTO #tblPersons
FROM (SELECT CAST ('<Name>' + REPLACE (@sku, ',', '</Name><Name>')
+ '</Name>' AS XML) AS [Products]) AS A
CROSS APPLY Products.nodes('/Name') as T(C)
SELECT *
FROM ProductInformation Pr
WHERE EXISTS (SELECT Name FROM #tblPersons tmp WHERE tmp.SKU
= case when len(tmp.SKU) = 11 then Product_No+Colour_Code+Size_Code
when len(tmp.SKU) = 8 then Product_No+Colour_Code
when len(tmp.sku) = 6 then Product_No end)
DROP TABLE #tblPersons
END编辑:我不能写存储过程的XML部分,因为我已经在Mysql中粘贴了相同的代码,它不创建存储过程。
错误:>无法转换为XML<
https://stackoverflow.com/questions/51350508
复制相似问题