2012-04-26 81 views
-2

我正在構建一個有點搜索引擎的東西。使用相同的參考對SQL結果執行操作

我的查詢拆分了一個查詢字符串,然後SELECT s爲字符串中的每個單詞所有與該單詞相關聯的引用id。

我有一個方法給每個查詢詞的每個id的相關性分數。不過,我正在尋找一種跟蹤方式,如果我的查詢多次返回id。任何人都可以向我指出正確的方向。我正在使用PHP和MySQL?

+2

真正的S.O問題包含代碼。這聽起來像你重新發明MySQL的全文搜索 - 出於某種原因。 – 2012-04-26 04:39:19

+0

我們確實需要查看代碼才能瞭解您要解釋的內容。如果您可以添加它,請將您的問題標記爲版主注意(或者只是回覆我的評論,我會在這裏等待一段時間),並且可以重新打開。 – 2012-04-26 11:11:38

回答

0

嗯,你可以使用PHP或SQL來實現這一目標:

一個代碼示例(沒有錯誤檢查,假設你直接使用MySQL的API - 你不應該):

<?php 
$sql = 'SELECT ...'; 
$result = mysql_query($sql); 
$ids = array(); 
while ($row = mysql_fetch_object($result)) { 
    $id = $row->id; 
    if (array_key_exists($id, $ids)) { 
     print 'id '. $id . ' exists'; 
     continue; 
    } 
    $ids[$id] = true; 
} 
?> 

使用SQL,你可以嘗試HAVING語句,就像這樣:

SELECT * FROM whatevs HAVING COUNT(id) > 1 

因爲我不知道你的表格佈局很難寫實際工作代碼/ SQL。