我有这样的疑问:
$this->db->select('
COUNT(tran_ID) AS count,
CASE WHEN MONTH(days)>=4
THEN concat(YEAR(days), "-", YEAR(days)+1)
ELSE
concat(YEAR(days)-1, "-", YEAR(days))
END AS format_date,
product_class AS saleCol
');
我在不正确的地方得到反引号和语法错误:
您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,了解在 'WHEN MONTH(days)>=4 THEN concat(YEAR(days), `"-"`, YEAR(days)+1) 附近使用的正确语法 ELSE concat(是的,位于第 1 行
SELECT COUNT(tran_ID) AS 计数,`CASE` WHEN MONTH(天)>=4 THEN concat(YEAR(天), `"-"`, YEAR(天)+1) ELSE concat(YEAR(天)-1 , `"-"`, YEAR(天)) END AS format_date, `product_class` AS saleCol FROM (`transactions`) WHERE `trans_type` = 'E' AND `product_class` != '0' GROUP BY `format_date`, `产品类别`
如何防止这些引用错误?
尝试这个查询,添加
FALSE
作为 select 语句中的第二个参数
$this->db->select(
'COUNT(tran_ID) AS count,
CASE WHEN MONTH(days)>=4 THEN concat(YEAR(days), "-", YEAR(days)+1)
ELSE concat(YEAR(days)-1, "-", YEAR(days))
END AS format_date,
product_class AS saleCol',FALSE);