0
私は、フォトIDSとタグIDを簡素化するのテーブルを持って戻りません。最近、MATCH AGAINSTコマンドを使用すると、適切なすべての一致が返されないことに気付きました。テストされたテキストと全く同じテキストが2行含まれていることもありますが、それでも1つは選択され、もう1つは選択されません。ここで MySQLのMATCH AGAINSTは、すべてのフィッティング結果が
と呼ばれるテーブルです写真id | type | size | tag |
+----------------+------+---------+----------------------------------------------------------------------+
| IMG_1485197299 | jpg | 1400000 | ImgTg_0000000000 |
| IMG_1485429476 | jpg | 0 | ImgTg_1485195510 ImgTg_1485195592 ImgTg_1485195621 ImgTg_1486234725 |
| IMG_1485429627 | jpg | 0 | ImgTg_1485195510 ImgTg_1485195621 ImgTg_1485195592 |
| IMG_1485429660 | jpg | 0 | ImgTg_1485195510 ImgTg_1485195621 ImgTg_1485195592 |
| IMG_1485429669 | jpg | 0 | ImgTg_1485195510 ImgTg_1485195621 ImgTg_1485195592 |
| IMG_1485429681 | jpg | 0 | ImgTg_1485195592 |
| IMG_1485429687 | jpg | 0 | ImgTg_1486234725 |
| IMG_1485429695 | jpg | 0 | ImgTg_1485195621 ImgTg_1485195510 |
| IMG_1485429704 | jpg | 0 | ImgTg_0000000000 ImgTg_1486234725 |
| IMG_1485429710 | jpg | 0 | ImgTg_1485195510 |
| IMG_1485429718 | jpg | 0 | ImgTg_1485195510 |
| IMG_1485433986 | jpg | 0 | ImgTg_1485195510 ImgTg_1485195592 |
| IMG_1485433993 | jpg | 0 | ImgTg_1485195510 ImgTg_1485195592 |
| IMG_1486234762 | png | 143306 | ImgTg_1486234725 |
これは私が使用しているコマンドです:
SELECT * FROM photos WHERE MATCH(tag) AGAINST('+ImgTg_1486234725 ' IN BOOLEAN MODE);
とそのテーブルのほとんどに細かい作業が、何らかの理由で、それはちょうどdoesnの特に最後の行ではうまくいきません。戻る:
+----------------+------+------+-------------------+
| id | type | size | tag |
+----------------+------+------+-------------------+
| IMG_1485429687 | jpg | 0 | ImgTg_1486234725 |
+----------------+------+------+-------------------+
注:を私は試してみて、それが動作異なるid
にtag
を変更した場合は!しかし、一部のids
は機能しません。
どうすればよいですか?
私は実際に自分のテーブルにタグを置くことを検討すべきです。 –
最後の行には、タグ名の一部として印刷できない文字が含まれている可能性があります。 'tag = 'ImgTg_1486234725'は最後の行を取得しますか? –
Mr. @ GordonLinoffありがとうございますが、私は問題を見つけて答えとして投稿しました。 – ARFallaha