Php 对具有相同引用的SQL结果执行操作

Php 对具有相同引用的SQL结果执行操作,php,mysql,search-engine,Php,Mysql,Search Engine,我正在建立一个类似搜索引擎的东西 我的查询将一个查询字符串拆分,然后从字符串中为每个单词选择与该单词关联的所有引用ID 我有一种方法,为每个查询词的每个id提供一个相关性分数。但是,如果我的查询多次返回id,我正在寻找一种跟踪方法。谁能给我指一下正确的方向吗。我正在使用PHP和mySQL???好吧,您可以使用PHP或SQL来实现这一点: 一个没有错误检查的代码示例,假设您直接使用mysql api-您不应该: <?php $sql = 'SELECT ...'; $result = mys

我正在建立一个类似搜索引擎的东西

我的查询将一个查询字符串拆分,然后从字符串中为每个单词选择与该单词关联的所有引用ID


我有一种方法,为每个查询词的每个id提供一个相关性分数。但是,如果我的查询多次返回id,我正在寻找一种跟踪方法。谁能给我指一下正确的方向吗。我正在使用PHP和mySQL???

好吧,您可以使用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。

真正的s.O问题包含代码。这听起来像是你重新发明了mysql的全文搜索——出于某种原因。为了理解你的解释,我们真的需要看看代码。如果你可以添加它,标记你的问题以引起版主的注意,或者只是回复我的评论,我会在这里呆一段时间,然后可以重新打开。
SELECT * FROM whatevs HAVING COUNT(id) > 1