Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

luciano_lka

montar um algorritmo

Recommended Posts

Olá , estou tentando montar um algorritmo, na select do mysql utilizando PHP, mas não estou conseguindo. Se puderem dar umas dicas, eu agradeço.

A lógica é assim:

 

Preciso cadastrar um livro que pode ter duplicidade e as etiquetas contem numeração alfanumerica, asaber:

 

-os primeiros numeros referem-se ao autor (0 a 999) cada autor tem um unico numero.

-os restantes referem-se ao nome do livro, que pode ser sequencial numerico ou alfanumerico e podem haver duplicidade. letra para

o livro e numero se houver duplicidade:(0 a 99, após o 99 começar com letra no terceiro campo)

 

Exemplo:

 

id_livro(primary key) etiqueta Nome do Livro Autor

1 1A Historias da Vida Beltrano de Campos

2 1A1 Historias da Vida Beltrano de Campos

3 1B Carroças em Chamas Beltrano de Campos

4 2A Felizes Anos Carolina Medeiros

5 2B Dias Modernos Carolina Medeiros

6 1A2 Historias da Vida Beltrano de Campos

546 1A99A Historias da Vida Beltrano de Campos

 

O maior poblema é montar a lógica da numeração de etiquetas, pois tenho que verificar se existe um livro igual antes, e se a numeração seguirá ordem sequencial ou de letras ou de números conforme houver duplicidade ou não, se não houver livro igual colocar a letra, mas se houver autor igual, sequenciar a letra, e também não consegui montar a select.

 

Obrigado !

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu faria uma FUNCTION que receberia autor e livro como parametro e retormaria a sequencia

 

Só uma pergunta, existe um cadastro de livro e um de exemplares ?

Compartilhar este post


Link para o post
Compartilhar em outros sites
Faz um select para obter a maior etiqueta de um livro/autor
Se não retornar nada 
  Faz um select para obter a maior etiqueta
    Se não retornar nada
      etiq := 1
    senao
      etiq ;= etiq + 1
senao
  etiq := etiq + 1
fim se
Retorna etiq

Desculpe a informalidade do algoritmo.

 

Só a lógica do etiq + 1 que deveria ser tratada para tratar estes casos de alfa etc.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.