update tbltest set percent = 100*value/(select sum(value) from tbltest)||'%';
公司专注于为企业提供成都网站设计、做网站、微信公众号开发、商城开发,成都微信小程序,软件定制网站开发等一站式互联网企业服务。凭借多年丰富的经验,我们会仔细了解各客户的需求而做出多方面的分析、设计、整合,为客户设计出具风格及创意性的商业解决方案,创新互联建站更提供一系列网站制作和网站推广的服务。
应该是这样的::
select name,brand_id,concat(floor((sum(goods_num)/(select sum(goods_num) from tablename))*100),'%') as goods_num_rate
from tablename group by name;
select 12/23 * 100 ||'%' from dual;
mysql 服务器支持 # 到该行结束、-- 到该行结束 以及 /* 行中间或多个行 */ 的注释方格:
mysql SELECT 1+1; # 这个注释直到该行结束
mysql SELECT 1+1; -- 这个注释直到该行结束
mysql SELECT 1 /* 这是一个在行中间的注释 */ + 1;
mysql SELECT 1+
/*
这是一个
多行注释的形式
*/
1;
注意 -- (双长划) 注释风格要求在两个长划后至少有一个空格!
尽管服务器理解刚才描述的注释句法,但 MySQL 客户端的语法分析在 /* ... */ 注释方式上还有所限止:
单引号和双引号被用来标志一个被引用字符串的开始,即使是在一个注释中。如果注释中的引号没有另一个引号与之配对,那和语法分析程序就不会认为注释结束。如果你以交互式运行 mysql,你会产生困惑,因为提示符从 mysql 变为 ' 或 "。
一个分号被用于指出当前 SQL 语句的结束并且跟随它的任何东西表示下一行的开始。
不论你是以交互式运行 mysql 还是将命令放在一个文件中,然后以 mysql some-file 告诉 mysql 读取它的输入,这个限制均存在。