我有两个数据库,具有相同的数据,但在某些字段中的数据类型略有不同(例如,SQLite DB具有文本,而MySQL DB具有可变字符(50))
我运行以下查询:
SELECT *
FROM audio a,
audiocodec ac,
fileproperties f,
transportstream t,
transportservice ts,
video v,
videocontent vct,
videoFrameRate vf,
videocodec vc
WHERE
f.PK_filename = a.filename
AND a.codec = ac.PK_audioCodecID
AND f.PK_filename = a.filename
AND f.PK_filename = t.filename
AND t.services = ts.PK_serviceID
AND f.PK_filename = v.filename
AND v.content = vct.PK_contentID
AND v.frameRate = vf.PK_frameRateID
AND v.codec = vc.PK_videoCodecID在MySQL DB中完成后,我得到了预期的10个结果。在SQLite中,有2个结果。有什么原因吗?(我知道这可能很难回答,因为没有指定我对表进行的数据类型和约束)
发布于 2010-08-25 17:21:46
我注意到的一件事是,f.PK_filename = a.filename在WHERE语句中出现了两次(这可能不是您得到不同结果的原因,但仍然值得注意)。
https://stackoverflow.com/questions/3564336
复制相似问题