Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/80.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 根据另一个表确定可能的列值_Mysql_Sql_Database - Fatal编程技术网

Mysql 根据另一个表确定可能的列值

Mysql 根据另一个表确定可能的列值,mysql,sql,database,Mysql,Sql,Database,我有一张这样的桌子: 表1 我希望列a和b限制为一组值,具体取决于类型列的值。可能的值应存储在另一个具有类型名称的表中 例如:ID1具有类型Location,因此列a和b只能从表Location_table中获取值,如下所示 位置表 所以a列可以取a1和a2的值 我的问题是:这是否可能,如果可能,如何实现 编辑:我意识到查找表并不是我想要的。我要一张a桌和一张b桌 表a 表b 因此,如果表1中的条目是Location类型,那么a列可以得到值a1和a2,b列可以得到值b1 我认为这更像是这样。现在

我有一张这样的桌子:

表1

我希望列a和b限制为一组值,具体取决于类型列的值。可能的值应存储在另一个具有类型名称的表中

例如:ID1具有类型Location,因此列a和b只能从表Location_table中获取值,如下所示

位置表

所以a列可以取a1和a2的值

我的问题是:这是否可能,如果可能,如何实现

编辑:我意识到查找表并不是我想要的。我要一张a桌和一张b桌

表a

表b

因此,如果表1中的条目是Location类型,那么a列可以得到值a1和a2,b列可以得到值b1


我认为这更像是这样。

现在看来,您提出的模式不是关系型的,因为无法将表1中的类型连接到Location_表中的行。的可能重复
+----+-----------+---+---+
| ID |   Type    | a | b |
+----+-----------+---+---+
|  1 | Location  | ? | ? |
|  2 | Equipment | ? | ? |
|  3 | Location  | ? | ? |
+----+-----------+---+---+
+----+----+
| a  | b  |
+----+----+
| a1 | b1 |
| a2 | b2 |
+----+----+
+----+-----------+-------+
| ID |   Type    | Value |
+----+-----------+-------+
|  1 | Location  | a1    |
|  2 | Location  | a2    |
|  3 | Equipment | a3    |
+----+-----------+-------+
+----+-----------+-------+
| ID |   Type    | Value |
+----+-----------+-------+
|  1 | Location  | b1    |
|  2 | Equipment | b2    |
|  3 | Equipment | b3    |
+----+-----------+-------+