如何从 oracle 中的行中 select 元组
How to select tuple from rows in oracle
我的温度 table 具有以下值:
╔═══════════╤═══════════╗
║ LATITUDE │ LONGITUDE ║
╠═══════════╪═══════════╣
║ 69.122112 │ 39.122112 ║
╟───────────┼───────────╢
║ 69.123450 │ 39.123450 ║
╚═══════════╧═══════════╝
我想做这样的事情
with temp as (select LATITUDE,LONGITUDE from SOME_TABLE_B)
select * from temp
union
select LATITUDE,LONGITUDE from SOME_TABLE where (LATITUDE, LONGITUDE) in (select (LATITUDE, LONGITUDE) from temp)
至于select具有相似经纬度对的所有其他数据。但我得到以下结果:
ORA-00920 invalid relational operator
如何从 table 中 select 元组,以将 IN CLAUSE 与元组一起使用?
先谢谢了
我认为问题在于子查询中的附加括号。试试这个:
select LATITUDE,LONGITUDE
from SOME_TABLE
where (LATITUDE, LONGITUDE) in (select LATITUDE, LONGITUDE from temp)
不太确定您的要求。如果您想检查临时 table 中的数据可用性,您可以使用以下查询,
select LATITUDE,LONGITUDE from SOME_TABLE where (LATITUDE, LONGITUDE) in (select
LATITUDE, LONGITUDE from temp)
如果你想检查可用性以及合并临时数据,你可以使用下面的方法,
select LATITUDE,LONGITUDE from SOME_TABLE where (LATITUDE, LONGITUDE) in (select
LATITUDE, LONGITUDE from temp)
UNION
select
LATITUDE, LONGITUDE from temp
在您的情况下,您还可以尝试将连接与子查询结合使用:
select LATITUDE,LONGITUDE
from SOME_TABLE s
INNER JOIN (
select LATITUDE, LONGITUDE
from temp
) t on t.LATITUDE = s.LATITUDE
AND t.LONGITUDE = s.LONGITUDE
我的温度 table 具有以下值:
╔═══════════╤═══════════╗
║ LATITUDE │ LONGITUDE ║
╠═══════════╪═══════════╣
║ 69.122112 │ 39.122112 ║
╟───────────┼───────────╢
║ 69.123450 │ 39.123450 ║
╚═══════════╧═══════════╝
我想做这样的事情
with temp as (select LATITUDE,LONGITUDE from SOME_TABLE_B)
select * from temp
union
select LATITUDE,LONGITUDE from SOME_TABLE where (LATITUDE, LONGITUDE) in (select (LATITUDE, LONGITUDE) from temp)
至于select具有相似经纬度对的所有其他数据。但我得到以下结果:
ORA-00920 invalid relational operator
如何从 table 中 select 元组,以将 IN CLAUSE 与元组一起使用?
先谢谢了
我认为问题在于子查询中的附加括号。试试这个:
select LATITUDE,LONGITUDE
from SOME_TABLE
where (LATITUDE, LONGITUDE) in (select LATITUDE, LONGITUDE from temp)
不太确定您的要求。如果您想检查临时 table 中的数据可用性,您可以使用以下查询,
select LATITUDE,LONGITUDE from SOME_TABLE where (LATITUDE, LONGITUDE) in (select
LATITUDE, LONGITUDE from temp)
如果你想检查可用性以及合并临时数据,你可以使用下面的方法,
select LATITUDE,LONGITUDE from SOME_TABLE where (LATITUDE, LONGITUDE) in (select
LATITUDE, LONGITUDE from temp)
UNION
select
LATITUDE, LONGITUDE from temp
在您的情况下,您还可以尝试将连接与子查询结合使用:
select LATITUDE,LONGITUDE
from SOME_TABLE s
INNER JOIN (
select LATITUDE, LONGITUDE
from temp
) t on t.LATITUDE = s.LATITUDE
AND t.LONGITUDE = s.LONGITUDE