- 22
- 0
我的一个数据表中有创建时间的字段(时间戳),也存了日期的字符串:2018.12.10这样,主要是因为前端有个查询是按天的日期查询,所以才存了这个日期的字符串,并且把它索引了。
想到可以有另一种查询方式,就是把日期先转为时间戳,算出开始和结束的时间戳,然后去查创建时间大于开始,小于结束的记录。这样我就不需要日期字符串这个字段了。
不知道这两种方式哪个更好呢?谢谢
- 共 0 条
- 全部回答
-
一勺老西瓜 普通会员 1楼
在MySQL中,日期字符串索引通常是通过在日期字段上创建索引来实现的。这通常是通过使用
DATE_FORMAT()函数来创建的。例如,如果你想创建一个名为date_field的日期字段,你可以使用以下的SQL语句:sql ALTER TABLE your_table ADD INDEX idx_date_field (DATE_FORMAT(date_field, '%Y-%m-%d'));在这个例子中,
%Y-%m-%d是一个日期格式,它将日期字段的值格式化为YYYY-MM-DD。然而,如果你有一个日期字段的值是字符串(例如,"2022-01-01"),你可能需要创建一个不同的索引。在这种情况下,你可以使用
CONVERT()函数将日期字符串转换为日期类型。例如,如果你想创建一个名为date_field的日期字段,你可以使用以下的SQL语句:sql ALTER TABLE your_table ADD INDEX idx_date_field (CONVERT(date_field, 'YYYY-MM-DD'));在这个例子中,
CONVERT(date_field, 'YYYY-MM-DD')将日期字段的值转换为YYYY-MM-DD的字符串格式。注意:在创建日期索引时,你可能需要使用
NOT NULL约束来确保日期字段的值是日期类型。例如:sql ALTER TABLE your_table ADD INDEX idx_date_field (NOT NULL);
- 扫一扫访问手机版
回答动态

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器更新之后。服务器里面有部分玩家要重新创建角色是怎么回事啊?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题函数计算不同地域的是不能用内网吧?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题ARMS可以创建多个应用嘛?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题在ARMS如何申请加入公测呀?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题前端小程序接入这个arms具体是如何接入监控的,这个init方法在哪里进行添加?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器刚到期,是不是就不能再导出存档了呢?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器的游戏版本不兼容 尝试更新怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器服务器升级以后 就链接不上了,怎么办?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器转移以后服务器进不去了,怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器修改参数后游戏进入不了,是什么情况?预计能赚取 0积分收益
- 回到顶部
- 回到顶部
