Я использую MySQL.Я хочу, чтобы столбец имел уникальные значения только в некоторых случаях.
Например, таблица может иметь следующие значения:
+----+-----------+----------+------------+
| id | user_id | col1 | col2 |
+----+-----------+----------+------------+
| 1 | 2 | no | no |
| 2 | 2 | no | no |
| 3 | 3 | no | yes |
| 4 | 2 | yes | no |
| 5 | 2 | no | yes |
+----+-----------+----------+------------+
Я хочу, чтобы no | no можно было повторить для того же пользователя, но нет комбинации yes | no.Это возможно в MySQL?А с knex?
Моя миграция для этой таблицы выглядит следующим образом
return knex.schema.createTable('myTable', table => {
table.increments('id').unsigned().primary();
table.integer('uset_id').unsigned().notNullable().references('id').inTable('table_user').onDelete('CASCADE').index();
table.string('col1').defaultTo('yes');
table.string('col2').defaultTo('no');
});