社区
基础和管理
帖子详情
oracle MAX函数查询时间太长
anmoi_yang
2009-02-23 03:04:15
SELECT max(date_time) FROM T WHERE where t.column1 = 'aaaa' and t.column2 = '888888'
column1,column2都是index,table中太概有三亿笔记录,有没有更好的优化方法?
...全文
1892
10
打赏
收藏
oracle MAX函数查询时间太长
SELECT max(date_time) FROM T WHERE where t.column1 = 'aaaa' and t.column2 = '888888' column1,column2都是index,table中太概有三亿笔记录,有没有更好的优化方法?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
10 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
代码摆渡人
2009-02-24
打赏
举报
回复
1. 表分区+索引分区
2. 不用max, 改用分析函数试试看。
qq249222923
2009-02-24
打赏
举报
回复
建议:先查询全部数据,大概的看一下date_time应该会大于什么时间,如果date_time也是索引的话,在where条件中加上date_time>某个时间,应该可以提高查询的效率
jdsnhan
2009-02-23
打赏
举报
回复
排序更慢。
混沌君子
2009-02-23
打赏
举报
回复
按日期降序,取第一个,select top 1 date_time from t where ... order by date_time desc
不知道这个的速度会怎么样
oraclelogan
2009-02-23
打赏
举报
回复
[Quote=引用楼主 anmi_yang 的帖子:]
SELECT max(date_time) FROM T WHERE where t.column1 = 'aaaa' and t.column2 = '888888'
column1,column2都是index,table中太概有三亿笔记录,有没有更好的优化方法?
[/Quote]
三个亿的数据啊,
一定要表分区,全文索引了吧!
liulongjin2008
2009-02-23
打赏
举报
回复
建议 1)对表按照date_time字段分区
2) 对索引进行分区
liulongjin2008
2009-02-23
打赏
举报
回复
楼上SQL貌似不对
CathySun118
2009-02-23
打赏
举报
回复
SELECT date_time FROM T WHERE where t.column1 = 'aaaa' and t.column2 = '888888' and rownum=1 order by date_time desc
CathySun118
2009-02-23
打赏
举报
回复
copy错了,sorry
CathySun118
2009-02-23
打赏
举报
回复
如果装服务器版,任选一种类型都会有
当然如果选择“自定义”还需要自己把它圈上
我装的10g客户端,
在装的时候选择“管理员”就行了
也可以选择“自定义”把组件都选上,因为我也不知道哪个是
10g的组件里只看见了oci,没有看见Pro *C/C++的
不过按上面的方法安装以后就可使用proc.exe了
但是没有可视化的procui.exe据说9i和8i原来都有的
不过这个不影响使用的,procui.exe唯一的好处就是配置预编译时要方便一些。
Oracle
入门课程
01、
Oracle
介绍 02、表空间、用户、授权 03、DDL数据定义语言 04、DML数据操纵语言 05、JDBC CRUD操作 06、
Oracle
简单
查询
07、
Oracle
伪列 08、
Oracle
聚合函数 09、
Oracle
关联
查询
、子
查询
10、
Oracle
分页 11、...
oracle
函数max,
oracle
max()函数和min()函数
当需要了解一列中的最大值时,可以使用MAX()函数;同样,当需要了解一列中的最小值时,可以使用MIN()函数。语法如下。SELECT MAX (column_name) / MIN (column_name)FROM table_name说明:列column_name中的数据可以是数值、字符串或是日期
时间
数据类型。MAX()/MIN()函数将返回与被传递的列同一数据类型的单一值。实例7 MAX()...
oracle
数据库max使用,
Oracle
/ PLSQL
MAX函数
这个
Oracle
教程解释了如何使用
Oracle
/ PLSQL
MAX函数
。
Oracle
/ PLSQL
MAX函数
返回表达式的最大值。
MAX函数
对一组行进行操作,并返回一行输出。您可以使用MAX具有任何有效表达式的函数。例如,您可以使用MAX()数字,字符串和数据
时间
。空值将被忽略MAX。您可以使用DISTINCT关键字排除重复条目。语法
Oracle
/ PLSQL
MAX函数
的语法是:SEL...
关于
Oracle
MAX(date)函数
关于
Oracle
MAX(date)函数 业务原要求是 取比参数小但是最接近参数的
时间
由于用到了聚合函数max,所以分成了两段sql sql 1 取得最接近的
时间
SELECT TO_CHAR(MAX(
时间
字段),'YYYY/MM/DD HH24:MI:SS') -- 'YYYY/MM/DD HH24:MI:SS' 之所以用这个 而不是用 yyyy/mm/dd hh:mm:ss 是因为 FROM
oracle
中
max函数
的使用方法,
oracle
MAX/MIN 分析函数小结
1、通常用法:selectdeptno,empno,ename,sal,MIN(SAL) OVER(partition by deptno orderby hiredate) minsal,MAX(SAL) OVER(partition by deptno orderby hiredate) maxsalfromemp;DEPTNO EMPNOENAMESALMINSALMAXSAL------ ...
基础和管理
17,377
社区成员
95,128
社区内容
发帖
与我相关
我的任务
基础和管理
Oracle 基础和管理
复制链接
扫一扫
分享
社区描述
Oracle 基础和管理
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章