我只是不明白为什么我的更新声明不起作用。
实际上没有错误。它只返回 0行受影响
Update releasing_schedule
Set Status ='Processing' Where promo_id = (Select promo_list_id From promo_list Where promo_code ='ABC' )
子查询本身返回1行(list_id = 5 )但在应用于UPDATE语句时返回0受影响。
2桌: releases_schedule 和 promo_list
releases_schedule promo_id 是promo_list表中的FK
promo_id和promo_list_id都是bigint类型
还试过IN和其他类型的运算符,但什么也没有返回。
答案 0 :(得分:1)
三件事之一。子查询不返回任何行(您可以排除)。或者,promo_id
表中没有匹配的release_schedule
。或者status
的值已经是'Processing'
。我假设该值已经是您想要设置的值。
Update releasing_schedule
Set Status ='Processing'
Where promo_id = (Select promo_list_id From promo_list Where promo_code ='ABC' )
答案 1 :(得分:0)
我真的很抱歉。我想念子查询字段:promo_list_id
。它应该只是list_id
。
但怪异发生了。它没有抛出任何错误(未知字段)或类似的东西..