想把年份涉及公元前后按照升序排起来,试了很多种办法都没法衔接,有没有大大有解决方案的~
数据库排序问题
相关帖子
-
改进一下,把零都去掉
.action{ $Year := .年份 } .action{ if eq .公历纪元 "公元前" } .action{ cat "-" (atoi (trunc 4 $Year))} .action{ else if eq .公历纪元 "公元" } .action{ (atoi (trunc 4 $Year))} .action{ end }
2 回复1 操作mozhu 在 2024-07-18 22:12:36 更新了该回帖原来这个排序这么智能@JeffreyChen 直观一点mozhu •大大,这个月和日要加进去怎么加呀 2333@zbqzone123 加进去做啥。。这个就是用来排序的,直接看你原来的就行。mozhu •相同年份的会乱~ - 其他回帖
-
-
JeffreyChen • • 1
写好了。
这个模板对你的「年份」有点要求:年份只能是 4 位数,少一位多一位都不行。(你要是真需要超过 4 位数的年份了再来找我)
你只需要用下面这个单行的模板替换你那个模板列里的模板就行了,然后可以右键表头把模板列隐藏起来。
.action{ $Year := .年份 }.action{ if eq .公历纪元 "公元前" }.action{ cat "1" (sub 9999 (atoi (regexFind "[0-9]{4}" $Year))) }.action{ else if eq .公历纪元 "公元" }.action{ cat "2" (regexFind "[0-9]{4}" $Year) }.action{ else }0.action{ end }
另外还有个地方要注意:因为排序的原因,新建条目的时候可能会跳动一下,没有选择「公历纪元」的条目会排序在数据库最上面
原始带缩进的模板是:
.action{ $Year := .年份 } .action{ if eq .公历纪元 "公元前" } .action{ cat "1" (sub 9999 (atoi (regexFind "[0-9]{4}" $Year))) } .action{ else if eq .公历纪元 "公元" } .action{ cat "2" (regexFind "[0-9]{4}" $Year) } .action{ else } 0 .action{ end }
1 回复1 操作JeffreyChen 在 2024-07-18 21:54:11 更新了该回帖 - 查看全部回帖
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于