mysql if update,在MySQL中用IF条件更新...

Hi!

Anyone knows if it''s possible to do an update if, and only if my

condition is TRUE.

Example:

In MYTABLE I have three columns, like this:

ID(INT), PUBLISH(ENUM(Y,N)), PASSWORD(VARCHAR(10))

This is what I want to do:

UPDATE the tablerow with id=333, SET publish=''Y'' IF password=''xxx''

I was trying out the MySQL-expression "IF(expr1,expr2,expr3)" but this

really doesn''t do it!

It could work if it was possible to set a SELECT statement in expr1,

returning NULL or EmptyString. Then if NULL DO(execute) expr2 ELSE

DO(execute) expr3

Like this: IF(SELECT * FROM mytable WHERE id=333 AND

PASSWORD=''xxx'',UPDATE mytable SET publish=''N'' WHERE id=333, UPDATE

mytable SET publish=''Y'' WHERE id=333 )

Any ideas?

解决方案J.P wrote:

This is what I want to do:

UPDATE the tablerow with id=333, SET publish=''Y'' IF password=''xxx''

# This will update row only if the password and id match.

update yourtablename set publish=''Y'' where id=333 and password=''xxx'';

J.P wrote:

This is what I want to do:

UPDATE the tablerow with id=333, SET publish=''Y'' IF password=''xxx''

# This will update row only if the password and id match.

update yourtablename set publish=''Y'' where id=333 and password=''xxx'';

J.P wrote:

This is what I want to do:

UPDATE the tablerow with id=333, SET publish=''Y'' IF password=''xxx''

# This will update row only if the password and id match.

update yourtablename set publish=''Y'' where id=333 and password=''xxx'';

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值