加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

sql – 何时使用VARCHAR和DATE / DATETIME

发布时间:2020-12-12 16:12:16 所属栏目:MsSql教程 来源:网络整理
导读:所以我们在Freenode上进行了这个编程讨论,而当我试图使用VARCHAR(255)来存储一个日期变量来存储这个格式的D / MM / YYYY时,就出现了这个问题.所以问题是为什么使用VARCHAR存储日期是如此糟糕.她的优点是: 它的代码速度更快以前我使用DATE,但是日期格式化是一
所以我们在Freenode上进行了这个编程讨论,而当我试图使用VARCHAR(255)来存储一个日期变量来存储这个格式的D / MM / YYYY时,就出现了这个问题.所以问题是为什么使用VARCHAR存储日期是如此糟糕.她的优点是:

它的代码速度更快以前我使用DATE,但是日期格式化是一个真正的痛苦.
>它的功率比日期要更强大的使用字符串?谁在乎,我们住在Ghz时代.
>它不符合伦理正确(lolwut?)这是其他用户告诉我的…

那么你最喜欢用来存储日期? SQL VARCHAR或SQL DATE?

解决方法

当你有数据库超过2-3万行时,你会知道为什么使用DATETIME比VARCHAR更好:)

简单的答案是,使用数据库 – 处理能力不再是问题了.只是数据库的大小是因为HDD的寻道时间.

基本上使用现代硬盘,您可以读取大约100条记录/秒,如果它们以随机顺序读取(通常是这种情况),那么您必须尽可能的减少DB大小,因为:

>硬盘的头不必“走”这么多
>您将在RAM中更多的数据

最终,硬盘的追求时间总会让你死亡.例如.一些简单的GROUP BY查询与许多行可能需要几个小时在磁盘上完成相比,几秒钟完成在RAM =>因为寻找时代.

对于VARCHAR,您不能进行任何搜索.如果您讨厌SQL如何处理日期太多,只需在32位整数字段中使用unix时间戳.您将(基本上)使用SQL DATE字段的所有优点,您只需使用选择的编程语言(而不是SQL函数)操作和格式化日期.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读