我正在閱讀的書Programming Collective Intelligence所有的例子都是在Python和sqllite中完成的。不過,我正在做PHP/MYSQL中的所有示例。從編程集體智慧第4章中,這個查詢的MySQL等價物是什麼?
第4章第63和64頁討論如何檢索搜索結果。具體來說,它將檢索相關文本包含搜索短語中所有單詞的文檔ID,並將該ID與每個單詞在文本中的位置一起返回。
幸運的是,這些頁面和代碼是available online for free for reference.這裏是從第64頁的查詢:
select w0.urlid,w0.location,w1.location
from wordlocation w0,wordlocation w1
where w0.urlid=w1.urlid
and w0.wordid=10
and w1.wordid=17
下面是結果從書,其中所述第一數量的文檔的ID設置的例子,和所述第二第三個數字代表每個單詞在該特定文檔中的位置。
e.getmatchrows('functional programming')
([(1, 327, 23), (1, 327, 162), (1, 327, 243), (1, 327, 261),
(1, 327, 269), (1, 327, 436), (1, 327, 953),..
我對數據庫一無所知,所以這個查詢是扔我一點。我如何在MySQL中寫這個?
我在我的PHP有信心,我知道一旦我瞭解SQL,以及如何動態地構造它,我不會有問題產生的PHP代碼爲getmatchrows()
功能。但是,如果您對與SQL查詢相關的getmatchrows PHP定義有一個建議,請分享一下。
該查詢將與MySQL一起工作就好了。 – Barmar
嗯,我不斷收到MySQL錯誤,我真的不明白這一點。讓我再次檢查我的代碼。 – user658182