MySQL查询 - 多个值

时间:2012-12-09 23:29:54

标签: php mysql

我试过在各处找到解决方案,但不能。

以下是我要做的事情:

我的数据库中有一个包含多个条目的单元格(类似于XML文件)。以下是几行:

main_description=""
main_multiblogger=1
main_comment="1"
main_comment_multiple="0"

如何对SELECT和UPDATE特定值运行查询?我是否必须解析这个以实现我的目标?

谢谢!

2 个答案:

答案 0 :(得分:1)

是的,如果将半结构化数据*存储在单个列中,则很难或不可能使用SQL表达式来选择或更新数据中的单个元素。

您需要将整个列重新选入应用程序,解析出来,以您希望的方式对其进行修改,并将其完全更新到数据库中,覆盖旧值。

*“半结构化”是指数据具有您理解的结构,但SQL没有。

答案 1 :(得分:0)

这取决于“具体价值”是什么 一种方法可能是:

SELECT * FROM table_name WHERE column_name='main_comment="1"'

或者:

SELECT * FROM table_name WHERE column_name LIKE 'main_comment=%'

也许您应该考虑将列拆分为keyvalue

SELECT * FROM table_name WHERE key='main_comment'

或者:

SELECT * FROM table_name WHERE key='main_comment' AND value='1'

如果其中一个适合您,您可以使用UPDATE声明执行相同操作。