我正试图从盖亚望远镜数据库中检索一些数据(https://gea.esac.esa.int/archive/ :然后进入“搜索”,然后进入“高级(adql)”选项卡)。为此,我使用adql(类似于sql,但应用于天文查询)。
第一个搜索是得到所有恒星的星等:
SELECT *
FROM gaiadr2.gaia_source
WHERE phot_g_mean_mag-(0.00652*POWER(bp_rp, 3)-0.08863*POWER(bp_rp, 2)+0.37112*bp_rp+0.00895)<=13
如果一颗恒星验证了这个条件,我想得到一个半径为0.0208度(5*15弧秒)的圆中的所有恒星。为此,我执行以下搜索:
SELECT *
FROM gaiadr2.gaia_source
WHERE CONTAINS(POINT('ICRS',gaiadr2.gaia_source.ra, gaiadr2.gaia_source.dec), CIRCLE('ICRS', ra, dec, 0.0208))=1
其中ra和dec是满足第一个要求的恒星的坐标。
问题是,我有大约950万个星星满足第一个查询,所以我有950万个查询要在之后得到周围的星星。我想知道是否有办法合并这两个查询。我的意思是:我执行第一个查询,如果一个星满足它,那么它会自动执行第二个查询来获取周围的星,并将满足第二个条件的所有星添加到结果文件中。有办法吗?谢谢!
注意:我添加了sql标记,因为adql是类似的,如果有一种方法可以执行这样的条件搜索,那么在adql中也可以执行同样的操作。
暂无答案!
目前还没有任何答案,快来回答吧!