Heim  >  Fragen und Antworten  >  Hauptteil

mysql - PHP数据库查询疑问

有一个文章表,文章表中有个关联标签的字段tag
tag字段的内容基本是这样的:1,2,3,333,230(关联的标签ID,用逗号隔开)
现在出现问题了,我现在想找到标签ID为3的文章,用LIKE %3%好像会把333,230标签的内容都查出来
在不改变表结构的情况下,有什么查询方法吗?

过去多啦不再A梦过去多啦不再A梦2712 Tage vor418

Antworte allen(5)Ich werde antworten

  • 给我你的怀抱

    给我你的怀抱2017-05-16 13:09:48

    SELECT * FROM test WHERE find_in_set('3',tag)

    Antwort
    0
  • PHP中文网

    PHP中文网2017-05-16 13:09:48

    tag LIKE '%,3' or tag LIKE '3,%' or tag LIKE '%,3,%'

    Antwort
    0
  • 高洛峰

    高洛峰2017-05-16 13:09:48

    LIKE %,3,% 加上逗号就好了

    Antwort
    0
  • 天蓬老师

    天蓬老师2017-05-16 13:09:48

    find_in_set,用这个可以满足你的要求,不要用like....

    Antwort
    0
  • 漂亮男人

    漂亮男人2017-05-16 13:09:48

    我建议使用另外一张表来维护分类关系。find_in_set可是全表扫描,没有使用索引的。到时候数据库会有问题的

    Antwort
    0
  • StornierenAntwort