如何在SQL Server Compact Edition中编写此查询?

如何在SQL Server Compact Edition中编写此查询?,sql,select,sql-server-ce,subquery,Sql,Select,Sql Server Ce,Subquery,我知道SQL Server CE不允许返回标量值的子选择。有没有办法重写这个查询以便它可以工作?问题在于子选择,当然,SQLCE返回一个解析错误 Insert INTO InvoiceItems (InvoiceID, Item, Price, Amount, Unit) SELECT (SELECT MAX(Id) FROM IncomeInvoices), Item, Price, Amount, Unit FROM InvoiceItems

我知道SQL Server CE不允许返回标量值的子选择。有没有办法重写这个查询以便它可以工作?问题在于子选择,当然,SQLCE返回一个解析错误

Insert INTO InvoiceItems (InvoiceID, Item, Price, Amount, Unit) 
   SELECT 
      (SELECT MAX(Id) FROM IncomeInvoices), Item, Price, Amount, Unit 
   FROM 
      InvoiceItems 
   WHERE
      InvoiceID = @1

这会给你一个错误吗?你想实现什么?复制表中到目前为止的所有记录?使用having子句的join如何?是的,它是复制的一部分,但InvoiceID必须是最新的Max。其余的需要复制。SQLCE只是说在解析等方面有错误。