2010-08-25 38 views
0

我有2个数据库具有相同的数据,但稍有不同的数据类型中的一些字段(例如SQLite的DB具有TEXT其中My​​SQL数据库具有VARCHAR(50))的SQLite与MySQL - 相同的查询 - 不同的结果 - 多个联接

我运行以下查询:

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数据库,我得到10个结果如预期。在SQLite中,有2个结果。 有什么原因? (我知道这可能很难回答没有指定数据类型和我对表格所做的约束)

+0

对不起格式化!我无法让它工作。 – nf313743 2010-08-25 09:13:44

回答

0

我注意到的一件事是f.PK_filename = a.filename在您的WHERE语句中是两次(这可能不是原因你会得到不同的结果,但仍然值得注意)。

+0

谢谢你指出。但不,问题依然存在 – nf313743 2010-08-25 09:26:10

相关问题