【问题标题】:PHP Select in mysql database with unknown and operatorsmysql数据库中的PHP选择未知和运算符
【发布时间】:2015-08-04 18:58:22
【问题描述】:

我有一个书籍数据库。有一个 Tag 字段包含多个标签,并且标签的数量不一样。所以我们有两行类似的东西:

漫画、历史

艺术、科学、tag3、tag4

现在我有一个类似$stringtosearch 的字符串,它可以是具有该结构的标签的任意组合。

tag1,tag2...(它是逗号,我不知道标签或逗号的数量...)。

那么我应该如何为该搜索编写选择查询?

注意:例如,我想如果用户搜索包含 2 个标签的字符串,则显示包含所有两个标签而不是其中一个标签的记录

【问题讨论】:

  • 简单。见规范化。
  • 此时我应该称它为多少行?多少是多少:
  • @drew Pierce 这么多行

标签: php mysql sql database-normalization


【解决方案1】:

您可以在此处使用Like 关键字。

SELECT * from tst where tags like '%t1%' AND tags like '%t2';

SQL 小提琴:- http://sqlfiddle.com/#!9/a3e6c/2

【讨论】:

  • 这是一个完美的例子,说明为什么您不希望以这种方式保存数据:
猜你喜欢
  • 2012-01-20
  • 2014-03-25
  • 2017-12-05
  • 2011-02-16
  • 1970-01-01
  • 2017-11-03
  • 1970-01-01
  • 2012-12-06
相关资源
最近更新 更多