條件更新列
總之,建立 Cassandra 叢集需要選擇種子節點,設定複製因子,配置每個叢集節點的IP地址和埠,以及其他配置選項(例如叢集名稱)。Cassandra 叢集的主要配置檔案是 cassandra.yaml 檔案。透過正確的配置,Cassandra 叢集可以為海量資料提供高可用性和容錯性。遵循本文中顯示的語法和示例,您可以有效地配置 Cassandra 叢集以滿足您的特定需求。
語法
UPDATE table_name SET column1 = value1, column2 = value2, ... WHERE condition;
這裡,column1、column2 等是您想要更新的列的名稱,table name 是您想要更新的表的名稱,value1、value2 等是您想要賦予相應列的新值。必須滿足條件才能更新列。只有滿足條件的行才會被更新。
示例
假設有一個名為 students 的表,其中包含姓名、年齡和成績列。我們想要將所有在測試中獲得“A”的孩子的成績列更新為“A+”。
輸入表
姓名 |
年齡 |
成績 |
---|---|---|
John |
15 |
B |
Mary |
16 |
A |
Alex |
14 |
C |
UPDATE students SET grade = 'A+' WHERE marks > 90;
輸出表
姓名 |
年齡 |
成績 |
---|---|---|
John |
15 |
B |
Mary |
16 |
A+ |
Alex |
14 |
C |
假設表 orders 包含以下列:訂單 ID、客戶 ID、訂單日期和訂單狀態。對於 10 天前下的任何訂單,我們想要將訂單狀態列更改為“已送達”。
訂單 ID |
客戶 ID |
訂單日期 |
訂單狀態 |
---|---|---|---|
1001 |
101 |
2022-01-01 |
待處理 |
1002 |
102 |
2022-01-03 |
已發貨 |
1003 |
103 |
2022-01-05 |
已送達 |
1004 |
104 |
2022-01-08 |
待處理 |
1005 |
105 |
2022-01-09 |
已發貨 |
UPDATE orders SET order_status = 'shipped' WHERE DATEDIFF(CURDATE(), order_date) > 10;
輸出表
訂單 ID |
客戶 ID |
訂單日期 |
訂單狀態 |
---|---|---|---|
1001 |
101 |
2022-01-01 |
已發貨 |
1002 |
102 |
2022-01-03 |
已發貨 |
1003 |
103 |
2022-01-05 |
已送達 |
1004 |
104 |
2022-01-08 |
已發貨 |
1005 |
105 |
2022-01-09 |
已發貨 |
在這個例子中,只有超過 10 天前的訂單的訂單狀態欄位才會更新為“已送達”。
假設我們在名為 employees 的第三個資料庫中有一個員工 ID、姓名、薪水和部門列。我們想將每個在“銷售”部門工作的員工的薪水列增加 10%。
員工 ID |
姓名 |
薪水 |
部門 |
---|---|---|---|
1001 |
John Smith |
50000 |
銷售 |
1002 |
Jane Doe |
60000 |
市場營銷 |
1003 |
David Johnson |
75000 |
銷售 |
UPDATE employees SET salary = salary * 1.1 WHERE department = 'sales';
輸出表
員工 ID |
姓名 |
薪水 |
部門 |
---|---|---|---|
1001 |
John Smith |
50000 |
銷售 |
1002 |
Jane Doe |
60000 |
市場營銷 |
1003 |
David Johnson |
82500 |
財務 |
在這個例子中,我們只將“銷售”部門員工的薪水列增加了 10%。
結論
總之,條件更新列是資料庫管理系統的一個有用功能,它允許您僅在滿足特定條件時才能更改表中一個或多個列的值。透過使用正確的語法和設定正確的條件,您可以更具針對性和效率地更新資料庫表。