mysql中convert()函数的意思是用来把一个数据类型的值转换为另一个数据类型。
其他函数:
ASCII(s)
CHAR_LENGTH(s)
作用: 返回字符串 s 的字符数。
CHARACTER_LENGTH(s)
作用: 返回字符串 s 的字符数。
CONCAT(s1,s2...sn) 作用: 字符串 s1,s2 等多个字符串合并为一个字符串 。
CONCAT_WS(x, s1,s2...sn) 作用: 同 CONCAT(s1,s2,...) 函数,但是每个字符串之间要加上 x,x 可以是分隔符 。
FIELD(s,s1,s2...) 作用: 返回第一个字符串 s 在字符串列表(s1,s2...)中的位置 。
扩展资料:
MySQL 中文排序错误的解决方法
方法1
在 MySQL 数据库中,进行中文排序和查找的时候,对汉字的排序和查找结果是错误的。这种情况在 MySQL 的很多版本中都存在。如果这个问题不解决,那么 MySQL 将无法实际处理中文。
出现这个问题的原因是:MySQL
在查询字符串时是大小写不敏感的,在编绎 MySQL 时一般以 ISO-8859
字符集作为默认的字符集,因此在比较过程中中文编码字符大小写转换造成了这种现象,一种解决方法是对于包含中文的字段加上 "binary"
属性,使之作为二进制比较,
例如将 "name char(10)" 改成 "name char(10)binary"。
方法2
如果你使用源码编译 MySQL,可以编译 MySQL 时使用 --with--charset=gbk 参数,这样 MySQL 就会直接支持中文查找和排序了。
参考资料来源:百度百科-mySQL
要求精度高就用decimal审题错了...
简单写下区别:
float:浮点型,含字节数为4,32bit,数值范围为-3.4E38~3.4E38(7个有效位)
double:双精度实型,含字节数为8,64bit数值范围-1.7E308~1.7E308(15个有效位)
decimal:数字型,128bit,不存在精度损失,常用于银行帐目计算。(28个有效位)
numberic === decimal
float f = 345.98756f//结果显示为345.9876,只显示7个有效位,对最后一位数四舍五入。
double d=345.975423578631442d//结果显示为345.975423578631,只显示15个有效位,对最后一位四舍五入。
注:float和double的相乘 *** 作,数字溢出不会报错,会有精度的损失。
decimal dd=345.545454879.....//可以支持28位,对最后一位四舍五入。
注:当对decimal类型进行 *** 作时,数值会因溢出而报错。
只能改数据表字段的类型了,如果有可视化界面,就到可视化界面里面修改,例如phpmyadmin,如果没有就用mysql语句执行alter table user MODIFY new1 VARCHAR(10)欢迎分享,转载请注明来源:内存溢出
评论列表(0条)