MySQL多列唯一键

时间:2011-02-21 18:42:55

标签: mysql indexing

我熟悉的语法 create unique index 'blah' on 'some_table' ('col1','col2') 但我不确定这将如何表现。更具体地说,文档说

  

A column list of the form (col1,col2,...) creates a multiple-column index. Index values are formed by concatenating the values of the given columns.

这似乎在某些情况下可能没问题,但我想创建一个只包含数字的表。所以,我可以看到col1为12,col2为2,它将从我所知道的内容连接到122,然后col1 1和col2 22的值将匹配,这不是我想要的。有没有办法为串联定义分隔符或者是否已经存在一个分隔符?我应该这样做吗?

这是尝试图

table 1             middle               table 2
-------             ------               -------
t1_id               mid_id               t2_id
some_value          t1_id                another_value
                    t2_id

我希望t1_id和t2_id组合是唯一的,但是t1可以重复,t2可以重复。

1 个答案:

答案 0 :(得分:3)

不可能也不必指定分隔符。索引可以按照您的意愿运行。