MySQL将column_name与Column数据匹配

时间:2013-04-05 09:09:37

标签: mysql mysqli

所以我正在尝试使用两个(已经)生成的表。 在一个表1中有一个名为column_code的列 在表2中,列的名称与column_code

中的数据类似

每个例子 表1:

meta_data
----------------------------------
| pid         | 1                |
| question    | favorite website |
| column_code | AA123ZZ          |
---------------------------------- 

其中column_code的内容名称为:'AA123ZZ' 问题是:你最喜欢的网站是什么

表2:

content
-----------------------------------
| id          | 4                 |
| submit_date | 14-01-2013        |
| AA123ZZ     | stackoverflow.com |
-----------------------------------

此table_name AA123ZZ的内容例如是“ stackoverflow.com

现在我想要的是一个查询结果如下:

id: = 1
what is your favorite website: stackoverflow.com

所以实际上AA123ZZ代表这个问题,我没有其他方法可以将这些问题进行匹配,我该怎么办?

对不起,我不能说清楚这一点。 我得到了这两张桌子,事实上他们似乎错过了一些东西。

所以试着让它更清楚一点。

在内容表中,表名AA123ZZ是问题的“代码”。

数据库的制作者应该将问题作为列名而不是代码AA123ZZ。现在我需要将此代码与meta_data内的内容相匹配。

所以在question_column的meta_data中你可以找到:“最喜欢的网站” 在column_code中,您会找到AA123ZZ

AA123ZZ列的内容表中,您会找到: stackoverflow.com

正如您所看到的,我无法在内连接上轻松匹配这些内容。

那么有没有办法将一个表中的column_name与另一个表中列的内容进行匹配?

1 个答案:

答案 0 :(得分:1)

您无法加入column name本身可变的表格。您将需要在此处修复架构,可能要从foreign key表中的meta_data表中包含content值,然后您可以执行简单的join在两个表上。

Read more on foreign keys