从另一个 table 的特定列中的多个值中检索一个 table 的 SQLite 数据
Retrieving SQLite data of one table from multiple values in a specific column of another table
我在 SQLite 中有 2 个 table(一个包含图像元数据,另一个包含捕获图像的地理区域)。这两个 table 都包含“ImageName”作为唯一 feature/key。
现在,我需要获取特定区域组合的图像元数据。我有一个类似下面的查询,
SELECT * FROM IMG_META where ImageName = (SELECT ImageName from IMG_REGION where Country = 'denmark' or Country = 'Germany')
仅在查询第二个 select 语句时,它 returns 7 个图像名称(1 个来自 w.r.t 和 6 个 w.r.t 德国)。但是,当使用如下所述的相同查询时,我无法获取任何数据。
我知道该查询将不起作用,因为我正尝试向第一个 select 语句的“ImageName”提供 7 值,因为查询需要单个“ImageName”。当我从第二个 select 语句中获取单个图像名称时查询有效。
我需要为从第二个 select 语句返回的所有 7 个图像名称获取图像元数据(第一个 table 数据)。
有什么方法可以实现这个目标吗?
要获取两个 table 的匹配数据,请使用连接:
SELECT * FROM IMG_META
JOIN IMG_REGION ON IMG_META.ImageName=IMG_REGION.ImageName
WHERE IMG_REGION.Country = 'denmark' or IMG_REGION.Country = 'Germany'
我在 SQLite 中有 2 个 table(一个包含图像元数据,另一个包含捕获图像的地理区域)。这两个 table 都包含“ImageName”作为唯一 feature/key。
现在,我需要获取特定区域组合的图像元数据。我有一个类似下面的查询,
SELECT * FROM IMG_META where ImageName = (SELECT ImageName from IMG_REGION where Country = 'denmark' or Country = 'Germany')
仅在查询第二个 select 语句时,它 returns 7 个图像名称(1 个来自 w.r.t 和 6 个 w.r.t 德国)。但是,当使用如下所述的相同查询时,我无法获取任何数据。
我知道该查询将不起作用,因为我正尝试向第一个 select 语句的“ImageName”提供 7 值,因为查询需要单个“ImageName”。当我从第二个 select 语句中获取单个图像名称时查询有效。
我需要为从第二个 select 语句返回的所有 7 个图像名称获取图像元数据(第一个 table 数据)。
有什么方法可以实现这个目标吗?
要获取两个 table 的匹配数据,请使用连接:
SELECT * FROM IMG_META
JOIN IMG_REGION ON IMG_META.ImageName=IMG_REGION.ImageName
WHERE IMG_REGION.Country = 'denmark' or IMG_REGION.Country = 'Germany'