Domanda

k=conn:query({live=true,sql ="select DISTINCT O.OrderId, (SELECT R.ReportBody + (char(13)+char(10)) + 'Modified By: ' + UM.FirstName + ' at ' + UM.LastName + (char(13)+char(10)) +'Authored By: ' + UC.FirstName + ' at ' + UC.LastName + (char(13)+char(10)) + (char(13)+char(10)) AS [text()] FROM dbo.OrderReports R INNER JOIN dbo.Users UM ON R.ModifiedById = UM.UserId INNER JOIN dbo.Users UC ON R.CreatedById = UC.UserId WHERE R.OrderId = M[1].OrderId ORDER BY R.CreateDate DESC FOR XML PATH('')) 'OrderReport'FROM dbo.Orders O "})

I have above mentioned query and I am getting incorrect syntax error at where R.OrderId = M[1].OrderId , I am using sql with Lua. P.S: The value in M[1].OrderId is a uniqueidentifier.

But if I have this query:

  mk = conn:query({live = true, sql= "select ReportBody,DENSE_RANK() over (Order by ModifyDate DESC) from OrderReports where OrderId = '"..M[1].OrderId.."'"})

It works with M[1].OrderId though M[1].OrderId gives syntax error in the first query. How can I fix this in first query?

È stato utile?

Soluzione

OK, you have not answered my last question. But assuming that the query you have written is working this is what you are after:

k=conn:query({live=true,sql ="select DISTINCT O.OrderId, (SELECT R.ReportBody + (char(13)+char(10)) + 'Modified By: ' + UM.FirstName + ' at ' + UM.LastName + (char(13)+char(10)) +'Authored By: ' + UC.FirstName + ' at ' + UC.LastName + (char(13)+char(10)) + (char(13)+char(10)) AS [text()] FROM dbo.OrderReports R INNER JOIN dbo.Users UM ON R.ModifiedById = UM.UserId INNER JOIN dbo.Users UC ON R.CreatedById = UC.UserId WHERE R.OrderId = '"..M[1].OrderId.."' ORDER BY R.CreateDate DESC FOR XML PATH('')) 'OrderReport'FROM dbo.Orders O "})
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top