10万数据的排序,无索引,如何把时间缩短到半分钟以内?

tjxray 2012-01-05 10:07:38
select a.*,
(case when a.col1 like '%?%'
then ? else ?) as score1,
(case when a.col2 like '%?%'
then ? else ?) as score2,
(case when a.col3 like '%?%'
then ? else ?) as score3,
.....
.....
(case when a.col12 like '%?%'
then ? else ?) as score12

from A a
order by (score1+score2+.......score12)



?是动态传入的值,由页面输入。如何优化这条sql。我怎么都觉得没什么可能。但是需求还不能变,无奈啊。
是不是需要改变算法。求大神。
...全文
188 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
geniuswjt 2012-01-05
  • 打赏
  • 举报
回复
你这语句不可能吧,前面是a.*
那你后面没写group by,就算有group by,你是按a.*分组???[Quote=引用楼主 tjxray 的回复:]
select a.*,
(case when a.col1 like '%?%'
then ? else ?) as score1,
(case when a.col2 like '%?%'
then ? else ?) as score2,
(case when a.col3 like '%?%'
then ? else ?) as score3,
..……
[/Quote]
tjxray 2012-01-05
  • 打赏
  • 举报
回复
这种sql没法用索引!其实我从一开始就是觉得不可能实现的,10万条怎么也要20分钟吧。
可是技术这东西说不准,可能有些东西我不知道。各位高手帮忙想想看吧。
QWER_ASDFASDF 2012-01-05
  • 打赏
  • 举报
回复
有难度~!
刹怕雳 2012-01-05
  • 打赏
  • 举报
回复
无索引,like语句,有点坑爹啊,里面有BLOB字段么?我先想想!
争取今天 2012-01-05
  • 打赏
  • 举报
回复
不好优化,不知道你的需求是不是计分排序.如果是的话可以把你的表结构.和大体需求描述一下,看看能不能重新设计一下.
a120255857 2012-01-05
  • 打赏
  • 举报
回复
你直接order by decode()試試看
tjxray 2012-01-05
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 wmg494005678 的回复:]
测试一下,查询的时候,去掉Case When,取出结果,在内存中对DataSet进行处理。
[/Quote]
内存中对DataSet进行处理。。是指在存储过程中吗?
tjxray 2012-01-05
  • 打赏
  • 举报
回复
sql没错啊,a.*和group by有什么关系?你搞错了吧。。。
wmg494005678 2012-01-05
  • 打赏
  • 举报
回复
测试一下,查询的时候,去掉Case When,取出结果,在内存中对DataSet进行处理。
geniuswjt 2012-01-05
  • 打赏
  • 举报
回复
死吧,光发疯不回答问题[Quote=引用 5 楼 tjxray 的回复:]
怎么办啊,没时间了,再做不出来我就去死了。
[/Quote]
tjxray 2012-01-05
  • 打赏
  • 举报
回复
怎么办啊,没时间了,再做不出来我就去死了。
内容概要:本文围绕基于下垂系数功率分配的双机并联虚拟同步发电机(VSG)微电网黑启动控制开展研究,重点利用Simulink仿真平台构建系统模型,实现微电网在无外部电网支撑条件下的自主启动与稳定运行。研究通过引入VSG技术模拟同步发电机的惯性和阻尼特性,结合下垂控制策略实现双机并联系统在黑启动过程中的有功与无功功率协调分配,有效抑制电压频率波动和功率振荡问题。文中详细阐述了控制系统的架构设计、核心控制环路的实现方式、关键参数的整定方法,并通过仿真结果验证了所提出控制策略在动态响应、负载突变及系统恢复等方面的优越性能,为提升微电网的自主恢复能力与供电可靠性提供了有效的技术路径。; 适合人群:具备电力系统、电力电子与自动控制等相关专业知识背景,熟悉Simulink/MATLAB仿真环境,从事微电网、分布式能源系统、VSG控制等领域研究的科研人员、高校教师及硕士、博士研究生。; 使用场景及目标:①深入理解虚拟同步发电机(VSG)的工作原理及其在黑启动中的应用价值;②掌握基于下垂控制的双机并联系统功率均分与稳定控制技术;③构建完整的微电网黑启动仿真模型,服务于科研论文撰写、课题申报、实验教学或工程预研。; 阅读建议:此资源以仿真为核心手段,建议读者在学习过程中结合理论分析,动手搭建Simulink模型,逐步调试控制器参数,深入探究下垂系数、虚拟惯量等关键参数对系统动态性能的影响,并可进一步拓展至多机并联、含储能单元或复杂负载工况的场景进行深化研究。

3,499

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 高级技术相关讨论专区
社区管理员
  • 高级技术社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧