0

上記の SQL コードを実行するとエラーが返されます。解決方法を教えてください。

$keyword= PHP の変数 SQL テーブルは data(id,source,title,description,h1) $sql = "SELECT * , MATCH (title) AGAINST ('$keyword') AS rel1, MATCH (source) AGAINST (' $keyword') AS rel2, FROM data WHERE MATCH (title,source) AGAINST ('$keyword') ORDER BY (rel1*1.5)+(rel2) LIMIT $offset, $rec_limit ";

error sql SQL 構文にエラーがあります。MySQL サーバーのバージョンに対応するマニュアルで、4 行目の 'FROM data WHERE MATCH (title,source) AGAINST ('')' 付近で使用する正しい構文を確認してください。

私のWebサーバーにはサーバーがあります:UNIXソケット経由のローカルホストサーバーバージョン:5.1.51 mysql phpサーバーngixサーバー

4

1 に答える 1

0

余分なコンマを追加しました。これを試して:

SELECT * , MATCH (title) AGAINST ('$keyword') AS rel1, MATCH (source) AGAINST ('$keyword') AS rel2 FROM data WHERE MATCH (title,source) AGAINST ('$keyword') ORDER BY (rel1*1.5)+(rel2) LIMIT $offset, $rec_limit

また、ORDER BY (rel1*1.5)+(rel2) を一致するものに置き換える必要があるかもしれませんが、ここでもエイリアスが機能するかどうかはわかりません。

于 2012-04-22T15:27:02.157 に答える