sql - 提交前更新 IF 条件

标签 sql postgresql

在 SQL 中是否有类似 UPDATE IF 的语句,它允许我根据需要更新的行验证客户端提供的属性的子集?

例如更新帖子 SET body = $body WHERE post_id = $post_id IF author_id = $author_id

包含在交易中的

FIND、检查和 UPDATE 并不像我希望的那样优雅。也不是通过 WHERE 子句验证客户端提供的字段。

将属性添加到 WHERE 子句将增加需要创建的索引数量,除了验证之外没有任何好处。

最佳答案

你在找这个吗?

  UPDATE posts 
   SET body = $body 
   WHERE post_id   = $post_id AND 
         author_id = $author_id;

关于sql - 提交前更新 IF 条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26669000/

相关文章:

sql - 用选择概率优化 T-SQL 查询

java - 使用 XPath Contains 并收到 'missing right parenthesis' 错误

sql - 对相关记录进行分组,但仅从第一条记录中选取某些字段

sql - RBAR 与具有不同事务大小的基于集的处理的性能比较

MySQL - 检索具有最大值的记录

java - 是否可以编写一个 jOOQ 转换器来应用于数组?

postgresql - 无法在 PostgreSQL 中使用 select 子句

ruby-on-rails - 将 Rails 与现有数据库结合使用

ruby-on-rails - 使用 gzip 压缩将图像数据编码为 UTF-8 字符串

mysql - SQL 将 int 转换为日期时间