使用相同的参考对SQL结果执行操作

问题描述:

我正在构建一个有点搜索引擎的东西。使用相同的参考对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

嗯,你可以使用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。