我试图在这样的选择语句上进行内部联接:
select *
from (select* from bars where rownum <= 10 )as tab1
inner join (select * from bars where rownum <= 10 )as tab2
on tab1.close=tab2.close
Run Code Online (Sandbox Code Playgroud)
并且我收到以下错误:ORA-00933 SQL命令未正确结束任何帮助将不胜感激,谢谢!
我写了一个声明,花了差不多一个小时才能运行所以我在寻求帮助,所以我可以更快地做到这一点.所以我们走了:
我正在建立两个表的内部联接:
我有很多时间间隔由间隔表示,我想从这些间隔内的测量得到测量数据.
intervals
:有两列,一列是开始时间,另一列是间隔的结束时间(行数= 1295)
measures
:有两列,一列有度量,另一列有度量时间(行数=一百万)
我想得到的结果是一个表,在第一列中有度量,然后是度量完成的时间,考虑的时间间隔的开始/结束时间(对于时间在考虑范围内的行,它将重复)
这是我的代码:
select measures.measure as measure, measures.time as time, intervals.entry_time as entry_time, intervals.exit_time as exit_time
from
intervals
inner join
measures
on intervals.entry_time<=measures.time and measures.time <=intervals.exit_time
order by time asc
Run Code Online (Sandbox Code Playgroud)
谢谢
我有两个arraylists A1,A2.A1的每个元素都是关键,A2的每个元素都是对应的值.所以我找到的解决方案是循环A1(A1和A2具有相同的大小),使hashmap.add(A1 [i],A2 [i]),但有没有办法直接发送键值对作为两个集?我想避免循环它会减慢我的代码..提前谢谢你!
我有一个表格,其中列有price
和date
,按升序排序.我需要从这里计算一个返回向量return = price ( i) / price ( i- 1)
.时间不是基于时间的,这意味着一个记录可以在9h34,下一个记录可以在9h35,然后是9h40等...
我找到了以下主题:SQL语法用于计算返回数据的结果,但在Oracle中我不能在子查询中使用order by,你能帮帮我吗?
我想用一个事实,即在两个表t1
和t2
我能做出与内部联接on t1.colum1>t2.colum2
来计算回报向量的最大跌幅.问题是只有两个存储的数据库或表才能实现内部连接,我想只选择一部分表.
还有其他可能性,我是sql的新手,我找不到任何其他选项?
谢谢
编辑
在操纵我的内连接以便能够计算我的最大缩图之前,我必须能够在表上选择内部连接,而不是表本身.所以我遵循马克的建议,但我仍然收到错误.这是我的查询:
select *
from (select * from bars where rownum <= 10 as x)as tab1
inner join (select * from bars where rownum <= 10 as y) as tab2
on tab1.x=tab2.y
Run Code Online (Sandbox Code Playgroud)
错误是 ora-00907 missing right parenthesis