我已经读过这个:
所以我的问题非常接近,但并不完全相同。
我有一个包含 4 个“主”列的表(即我的所有表上都有这 4 个相同的列):
id
- int - autoincid_origin
- int - 创建第一条记录时的 iddate_v_start
- datetime - 记录有效期的开始日期date_v_end
- 日期时间 - 记录的有效期结束(如果NULL
它是当前的“有效”记录)
以下是此表特有的一些其他字段: - summary
- 文本 - detail
- 文本
知道了这一点,当我将某些东西更改为该表时,这就是我所做的:
- 我
date_v_end
将当前记录更新为“now()” - 我插入一条新记录,其中
date_v_start
=date_v_end
前一个,id_origin
= 与前一个相同,-date_v_end
=NULL
和(当然)新值summary
anddetail
。
我的问题是,如果summary
and的值detail
没有改变,我不想插入新记录,这是浪费时间和硬盘空间。
有没有办法(如果可能的话,一次性)像:
“如果summary<>'a value' or detail<>'another value' then update this record and insert this new one
”
?
所以,我的问题和我上面提供的链接之间的区别是: - 有多个字段要比较 - 有两个请求 - 如果可能,我想在一个请求中进行。