Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

230
Visualizações
¿Solo permitir que la columna tenga verdadero una vez para cada identificación?

tengo esta tabla:

 ID | genre_id | is_best_in_genre | movie_name -------------------------------- 1 | 3 | 0 | Hateful Eight 2 | 3 | 0 | Django Unchained 2 | 3 | 1 | Inglorious B 2 | 3 | 0 | Once Upon A Time in Hollywood

is_best_in_genre solo puede ser verdadero (1) una vez por cada genre_id . Solo puede haber 1 mejor película en cada género. ¿Cómo haría una restricción como esta?

over 4 years ago · Santiago Trujillo
2 Respostas
Responde à pergunta

0

Idea alternativa:

La forma más adecuada y normalizada de manejar esto es probablemente hacer una tabla 'best_in_genre' separada con una restricción única en genre_id .

Esto también es más fácil de actualizar, porque no es necesario que se asegure de que todo esté en 0 al seleccionar un nuevo 'mejor'.

over 4 years ago · Santiago Trujillo Relatório

0

Un mejor enfoque podría ser "mover" la columna is_best_in_genre a una tabla separada (unida). Una tabla simple con dos columnas podría hacer el trabajo:

 CREATE TABLE best ( idmovie int, idgenre int, PRIMARY KEY (idgenre))

Esto tendría que ser unido con la tabla original como:

 SELECT m.*, CASE b.idmovie>0 THEN 1 ELSE 0 END best_in_genre FROM movietable m LEFT JOIN best b ON idmovie=id AND idgenre=genre_id

La restricción PRIMARY KEY best la tabla se asegurará de que cada género solo pueda aparecer una vez.

over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda