Tidak kira baris, adalah satu-satunya lajur
P粉378264633
2023-09-03 17:26:33
<p>Adakah terdapat cara untuk menjadikan keseluruhan baris unik tanpa mengira nilai dalam lajur? </p>
<p>Jadi, jika lajur <kod>a</kod> mempunyai <kod>1</kod>, lajur <kod>b</kod>2</kod> jika anda memasukkan <kod>2</kod> ke dalam lajur <kod>a</kod>, masukkan <kod>1</kod> dilemparkan. </p>
<pre class="brush:none;toolbar:false;">+---+---+
|. a |
+---+---+
|. 1 |
|. 2 |. 1 |
+---+---+
</pra></p>
Anda boleh menggunakan pencetus untuk menguatkuasakan pelaksanaan. Tetapi saya tidak dapat memikirkan cara yang baik untuk mencapai ini menggunakan kekangan UNIQUE KEY.
Jika anda menukar cara anda menyimpan nilai supaya ia berada dalam satu lajur, dalam berbilang baris jadual yang dilampirkan, lebih mudah untuk menggunakan UNIQUE KEY untuk menguatkuasakan keunikan.
Jika anda ingin menunjukkan item berkaitan:
Jika anda memerlukan setiap ahli untuk muncul dalam satu kumpulan sahaja:
Tentukan 2 lajur terhasil maya, minimum dan maksimum, dan tetapkan kekangan unik padanya:
Lihat Demo.
Atau, untuk MySql 8.0+:
Lihat Demo.