[英]How do I query images from multiple tables in SQLite3
我有一个带有下表的SQlite图像数据库:
CREATE TABLE crowd_labels (mid int, attribute text, label text, primary key (mid, attribute));
CREATE TABLE modules (
mid int primary key,
project_id int,
src text
, mature_content, license);
CREATE TABLE scores (mid int,content_bicycle real, content_cat real, content_tree real, emotion_scary real, media_oilpaint real, content_bird real, content_dog real, emotion_gloomy real, media_3d_graphics real, media_pen_ink real, content_building real, content_flower real, emotion_happy real, media_comic real, media_vectorart real, content_cars real, content_people real, emotion_peaceful real, media_graphite real, media_watercolor real);
我可以分别执行以下查询,但是我想知道如何将它们组合为一个查询:
sqlite3 mydatabase.sqlite <<EOF > cat_pictures.htm
select "<img src=""" || src || """ height=200>"
from modules, crowd_labels where modules.mid = crowd_labels.mid
and attribute = "content_cat"
and label="positive"
limit 100;
EOF
sqlite3 mydatabase.sqlite <<EOF > watercolor_pictures.htm
select "<img src=""" || src || """ height=200>"
from modules, scores where modules.mid = scores.mid
order by media_watercolor desc limit 0,100;
EOF
第一个查询将通过检查“ crowd_labels”表返回一个包含100张猫图像的html文件,第二个查询将通过检查“得分”表返回100张水彩图像的html文件。
但是,如果我想将两者结合起来,也就是把我既是猫又是水彩的图像交还给我,我该怎么做?
抱歉,如果这是一个非常简单的问题,但是我在SQL方面有0背景经验。
只需加入所有三个表:
SELECT '<img src="' || src || '" height=200>'
FROM modules
JOIN crowd_labels USING (mid)
JOIN scores USING (mid)
WHERE attribute = 'content_cat'
AND label = 'positive'
ORDER BY media_watercolor DESC
LIMIT 100;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.