文章详情页
java - sql性能和高并发的取舍问题
浏览:129日期:2023-11-25 11:16:25
问题描述
SELECT
S.carOwnerID ,S.name,S.mobile,S.coopName,S.VIN,s.policyNO,S.effectiveDate,S.expiryDate,s.plateNo,( CASE WHEN s.num > 1 THEN1 WHEN s.num = 1 THEN0 END) AS carState FROM( SELECTc.carOwnerID,c.name,c.mobile,c.coopName,c.VIN,p.policyNO,p.effectiveDate,p.expiryDate,c.plateNo,count(p.PlateNo) AS num FROMcustomer C LEFT JOIN policy P ON C.carOwnerID = P.carOwnerID WHEREdate_add( P.createTime, INTERVAL 11.5 HOUR) > NOW()) s WHEREs.num > 0;
简单的用多表关联是可以的,如果遇到高并发,性能缺陷立即就出来
问题解答
回答1:多表关联并不意味着sql高性能,太复杂的SQL效率损耗并不比外部锁等低,跟高并发也没什么冲突。
建议把语句拆成简单语句,使用锁和补偿机制来保障事务性。
标签:
java
相关文章:
1. mysql - 在不允许改动数据表的情况下,如何优化以varchar格式存储的时间的比较?2. css - chrome下a标签嵌套img 显示会多个小箭头?3. javascript - 网页打印页另存为pdf的代码一个问题4. vim - docker中新的ubuntu12.04镜像,运行vi提示,找不到命名.5. java中返回一个对象,和输出对像的值,意义在哪儿6. css3 - 纯css实现点击特效7. docker网络端口映射,没有方便点的操作方法么?8. mysql 为什么主键 id 和 pid 都市索引, id > 10 走索引 time > 10 不走索引?9. javascript - Img.complete和img.onload判断图片加载完成有什么区别?10. javascript - 有适合开发手机端Html5网页小游戏的前端框架吗?
排行榜
