我想要一个MySQL的简单示例if if else endif语句。
我想做这样的事情(在Java中):
SELECT COUNT(*) FROM `table` WHERE `userID` = 1
if(count == 0){
INSERT INTO `table` (`userID`,`A` ,`B`)VALUES ('1', '323', '232')
}
else{
UPDATE `table` SET `A` = '323', `B` = '232' WHERE `userID` =1
}
答案 0 :(得分:8)
MySQL有INSERT ON DUPLICATE KEY UPDATE
,如果值已经存在,您可以更新,如果不存在,则允许更新。
首先,您需要设置UNIQUE
约束
ALTER TABLE myTable ADD CONSTRAINT tb_uq UNIQUE (ID)
如果您希望ID
是唯一的,那就是它。 (这只是一个例子)
INSERT INTO tableName(userID, A, B)
VALUES (1, 323, 232)
ON DUPLICATE KEY
UPDATE A = 323,
B = 232
答案 1 :(得分:5)
if语句(在存储块中):
IF search_condition THEN statement_list
[ELSEIF search_condition THEN statement_list] ...
[ELSE statement_list]
END IF
或if函数(内联):
IF(expr1,expr2,expr3)
的作用如下: IF(条件,what_to_do_if_true,what_to_do_if_false) 最后一部分与'else'相同。 if-else-if需要嵌入,如:
SELECT IF( id==1, "1", IF( ID==2, "2", "Neither" );
在大多数编程语言中,这与此相同:
if( id == 1 ) {
print "1"
} elsif( id == 2 ) {
print "2"
} else {
print "Neither"
}