Iam查询了一下。当我编辑表A中的数据时,需要检查表B中是否存在相同的数据,如果表B中存在数据,则忽略更新,如果数据为空或空,则表A中的数据需要表B中的更新。通过以下查询,我几乎实现了它,但问题是当表B中存在数据时,它只是删除数据。当数据存在时,它实际上应该忽略它。我猜这个案例陈述的一个小问题。请帮我解决这个问题。
$strSQLInsert2 = "UPDATE Table B
SET
`tender_intendername` = CASE WHEN `tender_intendername`='' or `tender_intendername` IS NULL
THEN '".$values["intendername1"]."' END,
`no_of_participants` = CASE WHEN `no_of_participants`='' Or `no_of_participants` IS NULL
THEN '".$values["no_of_participants"]."' END
WHERE tender_id=" . $values["tender_id"];
答案 0 :(得分:0)
我解决了。但需要编写两个查询来实现结果。
var myArray: NSMutableArray = [["edriverId":"1234","token":"anytokenid"]]
print(myArray)
var parsedata:String = myArray.objectAtIndex(0).valueForKey("token")as!String
print(parsedata)
答案 1 :(得分:0)
您必须在ELSE
表达式中添加CASE
:
UPDATE Table B
SET `tender_intendername` = CASE
WHEN `tender_intendername`='' or
`tender_intendername` IS NULL
THEN '".$values["intendername1"]."'
ELSE `tender_intendername` END,
`no_of_participants` = CASE
WHEN `no_of_participants`='' Or
`no_of_participants` IS NULL
THEN '".$values["no_of_participants"]."'
ELSE `no_of_participants` END
WHERE tender_id=" . $values["tender_id"];
ELSE
语句设置每个字段等于它自己,因此它保证当字段不为空而不是NULL
时字段不会改变。