mysql字段内容拆分排序

mysql字段内容拆分排序,第1张

先把分类全取出来..并随机排序.. 取排在第一个分类 例如是 西装

然后查询的时候 order by (category='西装') desc,category 即可实现要求.

select * from (select * from tablename where A='01' order by B asc) a

union all

select * from (select * from tablename where A='02' order by B desc) a

举个例子,这是itxxza表中的数据

分割后的运行结果:

select func_split_string(a,b) result, t.* from itxxza t

执行后均为success,则说明我们分割成功,这时再看下itxxzb表中数据:

具体实现可参考:itxxz.com/mysql/2015/0114/mysql_split.html

第一种:将TPS分散,也就是需要将表进行分区到不同库(一般这样要考虑的东西太多。数据量不大一般不考虑)

第二种:使用能提供更高TPS的产品(这边建议 redis 是不错的选择)。

这边排除第一种

使用第二种:

更具时间经验值:一般使用redis 能提供 TPS:3-5W 更具机器情况还有所提高。

QPS:7-10W 更具机器情况还有所提高。

对于我们的TPS的情况 3-5W TPS 的redis一般能够胜任

这边主要担心的就是有关 持久化 的问题,这就是架构上需要设计的了。

redis 自身具有持久化功能,每秒持久化一次。

更具我们 同步的情况其实同步可以忍受短时间不实时现象。如果出现redis失效(宕机或怎么的可以重启redis重新同步所有数据)

可以搭建 redis的master-slave 或 cluster 都行这样就能很好的解决一台redis宕机问题。

可以根据 数据库软件设计的某些原理和借鉴秒杀架构,在后台不定期的将redis的数据同步到MySQL。

步骤可以有:

先将相关数据 格式化 的写入到日志文件(有能力提供消息队列更好)。

写入日志成功之后再将数据在redis做 *** 作。确保出问题有数据库可查。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zaji/8538112.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-17
下一篇2023-04-17

发表评论

登录后才能评论

评论列表(0条)

    保存