[英]CodeIgniter: How to move one column value to another with Where condition using active record
我想將一個列值移動到另一個列值,例如有兩個表列'Location','Call_Location' 我想將'Call_location' 的所有值移動到'Location' 列,條件為僅選定日期范圍。 如何在 codeigniter 中做到這一點。
$text = "UPDATE phone_acc SET location = call_location WHERE dt >=
dateformat(current_date, '%Y-%m-01')
AND dt < dateformat(current_date, '%Y-%m-01') + interval 1 month;
$this->db->query($text);
這是行不通的。
其中一個問題發現它將第二個字段名稱作為字符串值“call_type”,而它應該將其作為字段名稱。
UPDATE `phone_acc` SET `location` = 'call_type' WHERE `call_date` = '2020-11-
01 01:33:51'
您的查詢缺少當月的條件。 假設日期存儲在dt
列中,您將執行以下操作:
UPDATE phone_acc
SET location = call_localtion
WHERE id = 50959757 AND dt >= dateformat(current_date, '%Y-%m-01')
對於滿足where
謂詞的每一行,這會將一個值從一列復制到同一行上的另一個值。
如果您的數據中有未來日期,也請使用上限:
dt >= dateformat(current_date, '%Y-%m-01')
AND dt < dateformat(current_date, '%Y-%m-01') + interval 1 month
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.