社区
Sybase
帖子详情
Sybase中sql语句的优化问题
czsyq
2005-07-25 04:41:02
请问sql语句的优化只是针对select语句吗?对update和insert语句有用吗?
哪位好人能提供这方面的资料吗?
谢谢!
...全文
124
4
打赏
收藏
Sybase中sql语句的优化问题
请问sql语句的优化只是针对select语句吗?对update和insert语句有用吗? 哪位好人能提供这方面的资料吗? 谢谢!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
yjs_lh
2005-08-04
打赏
举报
回复
优化不只是针对select,也针对update,insert,delete以及DDL语句。
找本数据库优化方面的书看看吧。
wgzymzx
2005-08-04
打赏
举报
回复
主要就是考虑索引了,然后就是写语句时条件的组织
sybasebbs
2005-07-27
打赏
举报
回复
应该没什么用吧~~
czsyq
2005-07-26
打赏
举报
回复
请朋友帮帮忙啊
sybase
sql
优化
器
sybase
的sql
优化
器,免费版 即是之前的LECCO SQL Expert,不仅能够找到最佳的
SQL语句
,它所提供的“边做边学式训练”还能够教开发人员和数据库管理员如何写出性能最好的
SQL语句
。它的“SQL比较器”可以标明源SQL和待选SQL间的不同之处。
LECCO SQL Expert (智能自动SQL
优化
)
更优更快 人工智能自动SQL
优化
----------http://www.sina.com.cn 2001/12/12 17:48
中
国电脑教育报文/SQL爱好者 所谓SQL,就是指Structured Query Language(结构化查询语言),它是目前使用最广泛的数据库语言,用来和数据库打交道,从数据库
中
得到用户需要的数据。但是要想熟练使用
SQL语句
,也不是一件简单的事,有些语句使用起来也比较麻烦。如果我们对
SQL语句
进行
优化
,那么用户使用起来 就会方便许多。 简单来说,
SQL语句
的
优化
就是将性能低下的
SQL语句
转换成达到同样目的的性能优异的
SQL语句
。人工智能自动SQL
优化
就是使用人工智能技术,自动对
SQL语句
进行重写,找到性能最好的等效
SQL语句
。 人工智能自动SQL
优化
随着人工智能技术的发展和在数据库
优化
领域应用的深入,在20世纪90年代末终于出现了突破性的进展——人工智能自动SQL
优化
。目前在商用数据库领域LECCO TechnologyLimited(灵高公司)拥有该技术并提供使用该技术的自动
优化
产品——LECCO SQL Expert,其支持Oracle、
Sybase
、MS SQLServer和IBMDB2数据库平台。该产品针对数据库应用的开发和维护阶段提供了几个特别的模块:SQL语法
优化
器、PL/SQL集成化开发调试环境(IDE)、扫描器、数据库监视器等。图1 人工智能自动SQL
优化
示意图 其核心模块之一“SQL语法
优化
器”的工作原理大致如下(如图1): 一条源
SQL语句
输入→“人工智能反馈式搜索引擎”对输入的
SQL语句
结合检测到的数据库结构和索引进行重写,产生N条等效的
SQL语句
输出→产生的N条等效
SQL语句
再送入“人工智能反馈式搜索引擎”进行重写,直至无法产生新的输出或搜索限额满→对 输出的
SQL语句
进行过滤,选出具有不同执行计划的
SQL语句
(即不同的执行效率)→对得到的
SQL语句
进行批量测试,找出性能最好的
SQL语句
。图2
优化
前的
SQL语句
自动
优化
实例 假设我们从源代码
中
抽取出这条
SQL语句
(如图2): SELECTCOUNT(*)FROMEMPLOY-EE WHEREEXISTS(SELECT'X'FROM DEPARTMENTswheresEMP_DEPT=DPT_IDAND DPT_NAME LIKE'AC%')AND EMP_IDIN(SELECT SAL_EMP_IDFROM EMP_SAL_HISTB WHERESAL_SALARY>70000) 按“
优化
”按钮后,经过十几秒,SQL Expert就完成了
优化
的过程,从
优化
细节
中
可以看到,它在十几秒的时间内重写产生了2267条等价的
SQL语句
,其
中
136条
SQL语句
有不同的执行计划(如图3)。图3
优化
结果 接下来我们可以对自动重写产生的136条具有不同执行计划的
SQL语句
进行批运行测试,以选出性能最佳的等效
SQL语句
。按下“批运行”按钮,在“终止条件”页选择“最佳运行时间
SQL语句
”(如图4),按“确定”。图4 测试条件 经过几分钟的测试运行后,我们可以发现SQL124的运行时间和反应时间最短。运行速度约有22.75倍的提升(源
SQL语句
运行时间为2.73秒,SQL124运行时间为0.12秒,如图5)。图5 测试结果 我们把SQL124放入源代码
中
,结束一条
SQL语句
的
优化
工作。从上例可以看到,LECCO SQL Expert的自动重写技术使原来需要几小时才能完成的
SQL语句
的
优化
工作,缩减到几分钟之内就可以完成。数据库管理员和开发人员可以从繁重的
SQL语句
优化
工作
中
解脱出来。 边做边学式训练 LECCO SQL Expert不仅能够找到最佳的
SQL语句
,而且提供的“边做边学式训练”还能够教会开发人员和数据库管理员如何写出性能最好的
SQL语句
。LECCO SQL Expert的“SQL比较器”可以标明源SQL和待选SQL之间的不同之处。LECCO SQL Expert详尽的上下文敏感帮助系统可以指出执行计划的深层含义。图6 源语句与SQL124的比较 以上面
优化
的结果为例,为了查看源
SQL语句
和SQL124在写法上的不同,我们可以按下“比较器”按钮,对SQL124和源
SQL语句
进行比较。如果选择“双向比较”复选框,“SQL比较器”可以将两条互相间的不同之处以蓝色表示。当然,你也可以从 源语句和重写后的
SQL语句
中
任选两条进行比较(如图6)。 从比较的结果可以看到,重写得到的SQL124把第一个Exists改写成了In;在字段DPT_ID上进行了合并空字符串的操作以诱导数据库先执行子查询
中
的(SELECTDPT_ID||'FROMDEPART-MENTWH
数据库转换工具,可实现oracle,mysql,sqlserver,
sybase
,db2相互转换
数据库转换工具,可实现oracle,mysql,sqlserver,
sybase
,db2相互转换
SQL循序渐进(看完不会你可以砍我)教程
介绍SQL SQL(Structured Query Language,结构查询语言)是一个功能强大的数据库语言。SQL通常使用于数据库的通讯。ANSI(美国国家标准学会)声称,SQL是关系数据库管理系统的标准语言。
SQL语句
通常用于完成一些数据库的操作任务,比如在数据库
中
更新数据,或者从数据库
中
检索数据。使用SQL的常见关系数据库管理系统有:Oracle、
Sybase
、 Microsoft SQL Server、 Access、 Ingres等等。虽然绝大多数的数据库系统使用SQL,但是它们同样有它们自立另外的专有扩展功能用于它们的系统。但是,标准的SQL命令,比如"Select"、 "Insert"、 "Update"、 "Delete"、 "Create"和 "Drop"常常被用于完成绝大多数数据库的操作。
sybase
常用
sql语句
常用
sql语句
1. 查看数据库的版本 select @@version 2. 查看数据库所在机器操作系统参数 exec master..xp_msver 3. 查看数据库启动的参数 sp_configure 4. 查看数据库启动时间 select convert(varchar(30),login_time,120) from master..sys
Sybase
2,598
社区成员
25,609
社区内容
发帖
与我相关
我的任务
Sybase
Sybase相关技术讨论区
复制链接
扫一扫
分享
社区描述
Sybase相关技术讨论区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章