关系中字段类型的逻辑

时间:2016-11-08 12:28:51

标签: mysql database relational-database foreign-key-relationship

我有一些用于用户偏好的表格,例如languagecurrency和...

id | title | slug ----+------------+-------- 1 | US Dollar | usd 2 | CA Dollar | cad 3 | Euro | eur 4 | Swiss Franc| chf 结构和样本记录:

language

id | title | code | flag ----+-------------+-----------+---------- 1 | English | en | img/flags/en.png 2 | French | fr | img/flags/fr.png 结构和样本记录:

users

我想在这些表和currency表之间创建一个关系,我想知道哪个字段对外键更好?例如,在currency.idcurrency.slug或{{1}}?

2 个答案:

答案 0 :(得分:0)

如果您看到 sql 的速度比应该使用currency.id,因为从批次中找到整数值这么多行(以千为单位)会更快< / strong>然后找到 varchar

但是在这里你看到货币赢得超过500,所以你可以使用它不会影响你的速度。

你可以在这个特定的例子中使用它们: currency.id或currency.slug

答案 1 :(得分:0)

我建议你使用currency.id建立关系。应该使用主键进行关系以获取大量数据。