问题描述
我在MSsql DB中具有以下关系:
我想进行一个UPDATE查询,在这里我可以过滤第一个表的值。 示例如下:
我想从Inv_Transaction_Lines_Table获取所有产品,其中第一个表(Gen_Documents_Table_1)的Document_No等于'3250824',并且状态为'Released'
SELECT查询非常简单:
SELECT dbo.Inv_Transaction_Lines_Table.*,dbo.Inv_Transaction_Lines_Table.Product_Id AS Expr1,dbo.Gen_Documents_Table.Document_No,dbo.Inv_Transaction_Lines_Table.Quantity_Base AS Expr2
FROM dbo.Gen_Documents_Table AS Gen_Documents_Table_1 RIGHT OUTER JOIN
dbo.Inv_Transactions_Table RIGHT OUTER JOIN
dbo.Inv_Transaction_Lines_Table ON dbo.Inv_Transactions_Table.Transaction_Id = dbo.Inv_Transaction_Lines_Table.Transaction_Id ON
Gen_Documents_Table_1.Id = dbo.Inv_Transactions_Table.Document_Id LEFT OUTER JOIN
dbo.Gen_Documents_Table ON Gen_Documents_Table_1.Master_Document_Id = dbo.Gen_Documents_Table.Id
WHERE (Gen_Documents_Table_1.State = N'30') AND (dbo.Gen_Documents_Table.Document_No = N'3250824')
但是我无法使用UPDATE查询。
谢谢!
解决方法
如果对select的查询正确,则可以在同一查询上对select进行更新。例如,如果要更新quantity_base:
let userInfo = notification.request.content.userInfo as! [String: Any]
var local = true
if let aps = userInfo["aps"] as? [String: Any] {
local = false
if let badgeCount = aps["badge"] as? Int {
if badgeCount == 0 {
return // Don't notify on badge reset
}
}
}
var notificationKey = ""
if let ck = userInfo["ck"] as? [String: Any] {
if let qry = ck["qry"] as? [String: Any] {
if let af = qry["af"] as? [String: Any] {
if let key = af["key"] as? String {
notificationKey = key
}
}
}
}