-2

私はちょっと検索エンジンのものを作っています。

私のクエリはクエリ文字列を分解SELECTし、その単語に関連付けられているすべての参照IDを文字列から各単語に対してsします。

各クエリワードの各IDに関連性スコアを与える方法があります。ただし、クエリがIDを複数回返す場合に追跡する方法を探しています。誰かが私を正しい方向に向けることができますか?PHPとmySQLを使用していますか?

4

1 に答える 1

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を書くのは難しいです。

于 2012-04-26T04:45:56.127 に答える