在下面我的SQLite数据库在每个表中有10个值。但是,在执行查询时,返回的结果大约为100。
SELECT videoformat, audioformat FROM videocodec, audiocodec
为什么会这样做?
由于
答案 0 :(得分:4)
你的SQL说:对于视频编码中的每一行,选择audiocodec中的所有行。这将给出10x10或100行。它相当于:
select *
from videocodec
cross join
audiocodec
您可能意味着检索音频和视频编解码器。你可以用联盟做到这一点:
select codecname
from videocodec
union
select codecname
from audiocodec
答案 1 :(得分:1)
您将从两个表中获取所有行的组合,也称为笛卡尔积。 10 x 10 = 100。