我有一个包含几个表的数据库,这些表包含基本的静态 ID-to-name 数据。2 仅在每个这些参考表中的列。
然后我有另一个表将接收用户输入的数据。每个用户输入实例都有自己的带有时间戳的行,但这里的重要列将包含一个或几个与其他表之一中的名称相关的 ID。为了便于提交和检索此信息,我选择将其作为文本输入,采用 json 格式。
一切都很顺利,直到我意识到我需要将大表与小表连接起来以将名称引用到 ID。我还需要在结果中返回 ID。
此表中的几行可能如下所示的示例:
Column 1 | Column 2 | Timestamp
["715835199","91158582","90516801"] | ["11987","11987","22474"] | 2012-08-28 21:18:48
["715835199"] | ["0"] | 2012-08-28 21:22:48
["91158582","90516801"] | ["11987"] | 2012-08-28 21:25:48
此表中将重复 ID# 的输入,但不一定在相同的分组中,因此我将 ID 与名称配对放在单独的表中。
有可能做一个WHERE name='any-of-these-json-values'
吗?在我查询主表以提取我需要包含的名称的 ID 后,我最好在 php 中加入 ghetto 吗?还是我只需要完全重新设计数据输入表?