Mysql 这是concat的正确用法吗?

Mysql 这是concat的正确用法吗?,mysql,codeigniter,concat,Mysql,Codeigniter,Concat,有谁能告诉我在这种情况下如何使用concat吗 谢谢。CONCAT和GROUP_CONCAT实际上都是无用的。您的问题不仅仅在于CONCAT,这里。。。这个查询有几个语法错误(以及安全漏洞)。使用活动记录而不是手动生成查询2。使用php而不是MySql中的case()函数连接货币和价格(为了灵活性)。是的,我让它在活动记录中工作,比如$this->db->select('CONCAT');我想concat(价格*0.73,,,curency)会很好用的。合并合并字段,因此不能为合并字段指定2个别

有谁能告诉我在这种情况下如何使用concat吗


谢谢。

CONCAT和GROUP_CONCAT实际上都是无用的。您的问题不仅仅在于CONCAT,这里。。。这个查询有几个语法错误(以及安全漏洞)。使用活动记录而不是手动生成查询2。使用php而不是MySql中的case()函数连接货币和价格(为了灵活性)。是的,我让它在活动记录中工作,比如$this->db->select('CONCAT');我想concat(价格*0.73,,,curency)会很好用的。合并合并字段,因此不能为合并字段指定2个别名
$this->db->query("SELECT *
FROM posts
LEFT JOIN sub_category on     
sub_category.sub_id = posts.category_post_id
LEFT JOIN categories ON categories.cat_id = sub_category.parent_id
LEFT JOIN images ON images.img_post_id = post.ID WHERE sub_category.sub_id=". $sub_id. " AND
posts.title LIKE %".$keyword."% concat(price,' ', curency) as price,curency,
case when curency= 'EUR' then concat(price,' ',curency) 
     when curency= 'USD' then concat(price,' ',curency) * 0.73
end as in_euros
ORDER BY CAST(in_euros as DECIMAL) ".$start_from." LIMIT".$num.",".$start)->result_array();

return $query;