0

MySQLで一意の組み合わせ制約/インデックスを作成するにはどうすればよいですか?私は順列を意味するのではありません。順序は関係ありません。

例:リンクテーブルと照合したい2人のユーザーがいます。テーブルには、usersテーブルの主キーに対応する外部キーである2つの列しかありません。

ペアがどちらの順序でも一意であるようにするインデックスを作成するにはどうすればよいですか?

4

2 に答える 2

0

私があなたの質問を理解する限り。2つの列を組み合わせた一意性制約を追加します。だから試してみてください

ALTER TABLE `tableName` ADD UNIQUE (
`first_column` ,
`second_column`
);
于 2012-08-28T05:36:56.723 に答える
0

アプリケーションで、col1 <col2を強制します。これにより、一貫した順序が提供され、単一のリンク行のみが生成されるようになります。これは、前提条件(「どちらの順序でも」)とうまく一致しませんが、状況に応じて機能するようです。プロジェクトの要件が非対称のユーザー関係(Twitter)に変わる前に、私は以前に同様の問題に遭遇しました。

于 2013-04-25T20:07:50.797 に答える