如何使用MySQL中的自定义逻辑IF语句比较两列之间的值
我有这样的表,如何将这个简单值与如何使用MySQL中的自定义逻辑IF语句比较两列之间的值,mysql,sql,database,phpmyadmin,Mysql,Sql,Database,Phpmyadmin,我有这样的表,如何将这个简单值与IF语句进行比较 我想比较j_path列的值和基于s_用户名的j_foto的值,如果j_path的值和j_foto的值相同,那么score列将是相同的,例如admin:8 如果j_path的值和j_foto的值不相同,那么score列将是j_foto。 对不起,我的初学者,谢谢你的帮助。谢谢 老实说,您的规则简化为仅使用j_foto中的值: update t set score = j_foto; 您描述的内容不需要条件逻辑 您可能会遇到j_foto为N
IF
语句进行比较
我想比较j_path列的值和基于s_用户名的j_foto的值,如果j_path的值和j_foto的值相同,那么score列将是相同的,例如admin:8
如果j_path的值和j_foto的值不相同,那么score列将是j_foto。
对不起,我的初学者,谢谢你的帮助。谢谢
老实说,您的规则简化为仅使用
j_foto
中的值:
update t
set score = j_foto;
您描述的内容不需要条件逻辑
您可能会遇到j_foto
为NULL
的情况,在这种情况下,您可能需要j_path
(尽管问题中未提及此情况,数据中也未建议此情况)。在这种情况下,请使用coalesce()
:
据我所知,您希望将
j_foto
的值复制到分数中。那么问题出在哪里呢?你不知道怎么写更新语句吗?我以前不这么想。但是如果这个问题不是问题的比例,我会删除这个问题,原谅先生。是的,正确,它可能是空的,也可能是很多数字,这是我关心的,我会尝试一下,谢谢。你提到的情况发生了,先生,在更多的数据输入,是的。谢谢你,先生。以及所有已经看到这篇文章的人。
update t
set score = coalesce(j_foto, j_path);