我有一個表的數據庫,其中有3列。下面是.schema給出: .schemaSQL3查詢,無法理解我在做什麼錯
CREATE TABLE Frequency (
docid VARCHAR(255),
term VARCHAR(255),
count int,
PRIMARY KEY(docid, term));
我試圖連接查詢得到兩個特定的文檔ID和長期匹配他們,(對不起,如果它沒有任何意義,我是新來的SQL) 。我期待一個表格式:
docid1 |term |count
docid2 |term |count
但我的格式爲docid1 |term |count|docid2 |term |count
我究竟做錯了得到結果?
也試圖選擇文檔ID或任何其他列的,而不是做一個選擇*給我一個含糊的鍵錯誤。以下是我正在使用的查詢:
select* from (select docid, term, count from frequency where docid = '10080_txt_crude') as c join (select docid , term, count from frequency where docid = '17035_txt_earn') as d on c.term = d.term;
最後在最後通過docid添加組只給出一個答案。
我試圖讓docid與這兩個ID然後列出條款匹配的那些。執行你的代碼,例如讓我含文檔ID 1的結果,但我想要的是列出從文檔ID 2以及正下方,該文檔ID的滿足上述條件。是否有意義?不知道我是否清楚解釋。 – pravinoku
如果你想要的結果並排側,這是選擇C *,d *用JOIN。如果你想要一個以上的結果,那就是一個UNION。使用JOIN更容易找到匹配 - SQL表達式可以通過連接引用列,但不能在行之間引用。在SQL查詢和其他操作中,行在數學上是獨立的。 –
所以SELCT *同一個連接只能通過側產生結果的一面呢?這是一個h/w的任務,當我找到正確的答案時,我會保持發佈。我可能錯過了一些東西。 – pravinoku