我试图从我的数据库中获取DOUBLE
类型值以用于报表。如果这个值是NULL
,那么报告应该说明"N/A"
。MySQL只将double转换为varchar
我只是有一些困难与SQL,使这项工作:
SELECT CAST(IFNULL(billablerate, 'N/A'), CHAR(5)) AS billablerate FROM rates
有个声音告诉我,这些功能不能像这样的组合,但我不知道该怎么弄他们都在。
任何援助将是伟大的!
我试图从我的数据库中获取DOUBLE
类型值以用于报表。如果这个值是NULL
,那么报告应该说明"N/A"
。MySQL只将double转换为varchar
我只是有一些困难与SQL,使这项工作:
SELECT CAST(IFNULL(billablerate, 'N/A'), CHAR(5)) AS billablerate FROM rates
有个声音告诉我,这些功能不能像这样的组合,但我不知道该怎么弄他们都在。
任何援助将是伟大的!
试试这个:
SELECT IFNULL(CAST(billablerate AS char (5)), 'N/A') AS billablerate FROM rates
作品:
SELECT IFNULL(CAST(null AS char (5)), 'N/A') AS exp; // N/A
SELECT IFNULL(CAST(10 AS char (5)), 'N/A') AS exp; // 10
我怀疑它导致你麻烦的功能顺序。
尝试:
SELECT IF(billablerate IS NULL, 'N/A', CONVERT(billablerate, CHAR(5))) as billablerate FROM rates
原来在我的指挥错误是语法,见下图:
我的原始代码:
SELECT CAST(IFNULL(billablerate, 'N/A'), CHAR(5)) AS billablerate FROM rates
的修复:
SELECT CAST(IFNULL(billablerate, 'N/A') AS CHAR(5)) AS billablerate FROM rates