2013-11-25 32 views
0

我正在使用SQLite,我需要做两个select语句并通过列连接它们。下面是我确实想获得工作的代码:SQL加入两个选择语法错误

的表是这样的:

msgstore.db
消息:| _id | key_remote_jid |

wa.db
wa_contacts:| _id | jid |很多列

ATTACH DATABASE 'path\msgstore.db' As db1; 
ATTACH DATABASE 'path\wa.db' As db2; 
SELECT T1.*, T2.* 
FROM (SELECT DISTINCT db1.messages.remote_resource FROM db1.messages WHERE key_remote_jid = "somevalue" AND remote_resource IS NOT Null) AS T1 
JOIN (SELECT db2.wa_contacts.* FROM db2.wa_contacts) AS T2 
ON T1.remote_resource = T2.jid 

该代码的说,附近有语法错误“*”,但我不能找出它是什么。
需要一些关于如何解决这个问题的建议。

+0

尝试将'SELECT T1。*,T2。*'更改为'SELECT *'并检查。 – MusicLovingIndianGirl

+1

也尝试将db2.wa_contacts。*更改为* :) – Himanshu

+0

我尝试了两种解决方案并且工作正常。似乎Himanshu指出的说法是引发语法错误的说法。谢谢你们俩!!! :) – Rigel

回答

0

只是为了记录@Himanshu答案:

正如你可能会发现在documentationresult column可以使用table.**,但不database.table.*。因此SELECT db2.wa_contacts.*必须恢复为SELECT db2.wa_contacts.*

顺便说一句,整个(SELECT db2.wa_contacts.* FROM db2.wa_contacts)可能只是简单地引用为db2.wa_contacts