7
如果我想在MySQL的具体数字列的总和,我做怪异的行为
SELECT SUM(MyColumn) FROM MyTable WHERE 1;
这将返回例如100号
但我想在前面加上一些文字和值,所以我做
SELECT CONCAT('Sum is: ',SUM(MyColumn)) FROM MyTable WHERE 1;
而是获得Sum is: 100
我得到这样的事情546573743a20343030
。
这是错误还是功能?我究竟做错了什么?
UPDATE
SELECT CONCAT('Sum is: ',CAST(SUM(MyColumn) AS varchar(20))) FROM MyTable WHERE 1;
铸造为varchar不工作:让SQL语法错误。
呀,绝对是一个特点。尝试在一段时间内铸造一次。 CONCAT('Sum是:',CAST(SUM(MyColumn)AS varchar(20))' – Kermit
1)为什么downvote?这是一个很好的问题。 2)我试图铸造,不起作用。 – NumberFour
“MyColumn”的数据类型是什么?“SUM(MyColumn)”返回什么值? – Lamak