使用相同的参考对SQL结果执行操作
问题描述:
我正在构建一个有点搜索引擎的东西。使用相同的参考对SQL结果执行操作
我的查询拆分了一个查询字符串,然后SELECT
s为字符串中的每个单词所有与该单词相关联的引用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,你可以尝试HAVING语句,就像这样:
SELECT * FROM whatevs HAVING COUNT(id) > 1
因为我不知道你的表格布局很难写实际工作代码/ SQL。
真正的S.O问题包含代码。这听起来像你重新发明MySQL的全文搜索 - 出于某种原因。 – 2012-04-26 04:39:19
我们确实需要查看代码才能了解您要解释的内容。如果您可以添加它,请将您的问题标记为版主注意(或者只是回复我的评论,我会在这里等待一段时间),并且可以重新打开。 – 2012-04-26 11:11:38