One SQL statement updates multiple records
Release: 2016-07-25 09:02:21
Original
1427 people have browsed it
Get two arrays from the form, one is to update the field data, the other is the condition array, I use id here
Source: http://www.liuhai.org/sql-set-key-case-when-then
- function save_category_district($parame,$id){
- if(!is_array($parame) || !is_array($id)) return false;
- $sql="UPDATE ".table.'category_district'.' SET ';
- foreach($parame as $key=>$val){
- $csql.=$key.'=CASE id';
- foreach($parame[$key] as $key=>$val) {
- $csql.=" WHEN {$id[$key]} THEN '{$val}'"; //Note that the key of the id here must be the same as the key of the data to be updated, which is the numeric key from the form
- }
- $csql.=' END,';
- }
- $sql.=rtrim($csql,','); //This step is to remove the comma after the last END
- $id=implode(',', $id); //id becomes a string here
- $sql.=" WHERE id IN ({$id})";
- if(!$this->mydb->query($sql)) return false;
- return true;
- }
Copy code
|
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Latest Articles by Author
-
2024-10-22 09:46:29
-
2024-10-13 13:53:41
-
2024-10-12 12:15:51
-
2024-10-11 22:47:31
-
2024-10-11 19:36:51
-
2024-10-11 15:50:41
-
2024-10-11 15:07:41
-
2024-10-11 14:21:21
-
2024-10-11 12:59:11
-
2024-10-11 12:17:31