完全没有好处
我是他主管的话,早就开除他了
根本是软件圈的乱源!
是不是table scan也不是关键问题,所以你也是非懂似懂。
首先,资料排序就是一个问题,数值型态排序,100 > 9,但是字串 “9” > “100”用
错型态数据库对你的排序完全是错乱的!
更不要说 index 在这种情况无法发挥效益!因为index 就是依赖B-Tree排序来加快效能!
再来就是祸害千年的维护问题,某个字段看起来都是数字,但资料型态是字串,如果你没
有整个数据库全部的资料都看过,你敢打包票说里面全是数字没有不干净的脏东西?
这种在做资料转移和统计分析最容易踩到古人的地雷
总之就是一个混蛋、乱源,快让他退休吧
要我删文,老规矩,私信我
※ 引述《andymai (人生只有一次)》之铭言:
: 如题
: 某个同事不知道为什么有个根深蒂固的观念
: 每次只要谈到资料表设计
: 都会说要把资料存成字串(非 json)
: 但是存在字串的话
: 查询时不是会引起 full table scan 吗?
: 如果是数值 拿出来的时候要转型态才能用
: 存回去又要再转成字串
: 某次又耳闻某公司也会这样做
: 这下小弟实在不懂了
: 好奇好处在哪?
: 版上有大大愿意说明一下吗?
: (为什么不问他? 因为上次说过 full table scan 的问题了
: 所以上次没这样做 这次又...)
最怕还到观念完全错误还以为自己是对的, 指正他还说我这样做这么久了都没出事我是对的
作者:
arxing (Arxing)
2017-11-05 06:32:00我上一份工作刚进去 要接api也是发现数据库字段全部都字串… 格式还不一致导致我还要例外处理 碍于菜鸟也不能说什么
待的小公司 之前数值跟日期都存字串 转换时采了一堆雷
作者:
chocopie (好吃的巧克力派 :))
2017-11-05 08:13:00不只小公司,大公司也有可能这样搞......如果是跨国外商,情况可能好一点
碰过很多数字存字串的耶...不过日期存字串就有点扯了
作者:
mintu (MinTu)
2017-11-05 12:39:00感觉那个人不想了解 DB 内字段类型的差异
作者:
ck52623 (无端神伤)
2017-11-05 15:13:00政府机关也是一堆这种垃圾db
政府机关的资料真的很垃圾,没办法,所以才要data clean
作者:
expury (ao6x87)
2017-11-05 20:30:00但是,记得有的语言似乎可以用字母顺序排序or大小(?忘记哪个语言
楼上,就是因为按照字母顺序排序,所以9才会大于100啊因为字串比对使用字符内码排序,无论ascii或unicode都一样
当你资料突破千位,上面的方法变成要临时扩充,旧资料要全部抓出来转换,这不是祸害千年的维护问题吗?不做的话,系统就会开始异常了
作者:
frank868 (frank)
2017-11-06 22:13:00我永远记得有个年资18年的前辈用字串来判断数字的