Php 如何在codeigniter中为组_concat和带有replace for table列的concat编写查询
我得到的列值以逗号分隔,在单引号内,这在phpmyadmin中运行良好,并得到输出,但我想使用$this->db->query在codeigniter中编写,但由于单引号而得到一些错误 那么如何以codeigniter格式编写这个查询呢Php 如何在codeigniter中为组_concat和带有replace for table列的concat编写查询,php,mysql,codeigniter,Php,Mysql,Codeigniter,我得到的列值以逗号分隔,在单引号内,这在phpmyadmin中运行良好,并得到输出,但我想使用$this->db->query在codeigniter中编写,但由于单引号而得到一些错误 那么如何以codeigniter格式编写这个查询呢 Query in codeigniter: // Not working $this->db->query("SELECT GROUP_CONCAT( DISTINCT CONCAT("'", REPLACE(user_id, ",", "'
Query in codeigniter: // Not working
$this->db->query("SELECT GROUP_CONCAT( DISTINCT CONCAT("'", REPLACE(user_id, ",", "','") , "'"))
as listed_id FROM user_data"); // user_id is column name
Query in phpmyadmin: //working
GROUP_CONCAT( DISTINCT CONCAT("'", REPLACE(user_id, ",", "','") , "'"))
您的查询字符串无效,因为可以将其识别为字符串:
"SELECT GROUP_CONCAT( DISTINCT CONCAT("
其余的都没有意义:
'", REPLACE(user_id, ",", "','") , "'")) as listed_id FROM user_data"
当引号位于同一类型的引号内时,应将其转义:
$this->db->query("SELECT GROUP_CONCAT( DISTINCT CONCAT(\"'\", REPLACE(user_id,
\",\", \"','\") , \"'\")) as listed_id FROM user_data");