Unir 2 tabelas pelo Nome da Coluna e não pelo conteúdo do campo.

MySQL

Delphi

14/10/2014

Olá a todos.
Há em SQL alguma instrução para unir 2 tabelas, usando o "nome das colunas" e "não o conteúdo das mesmas"? Explico:

Tenho uma tabela "Equipo" (de equipamentos) com 30 campos para valores:
Equipo_PAR1... Equipo_PAR2... Equipo_PAR30.
Nestes campos vou armazenar apenas "valores".

Tenho uma tabela "Cadpar" (de tipos de parâmetros), que será fixa em 30 registros, sendo:
CPAR_ID tinyint(4) NOT NULL AUTO_INCREMENT,
CPAR_NOME varchar(100) NOT NULL DEFAULT 'LIVRE',
CPAR_ORDEM tinyint(4) DEFAULT NULL,
CPAR_BASE decimal(10,2) DEFAULT NULL,
CPAR_MIN decimal(10,2) DEFAULT NULL,
CPAR_MAX decimal(10,2) DEFAULT NULL,
Nesta tabela o usuário poderá dar "nome" a um parâmetro e especificar, os valores Padrão (base), mínimo e máximo, além da ordem desejada para apresentação.

Usando MYSQL, gostaria de apresentar todos os dados da tabela Equipo e também os nomes da tabela Cadpar, ou seja:

Equipo_par1 = tenho um valor + Cadpar.Cpar_nome onde Cadpar.Cpar_id fosse 1
Equipo_par2 = tenho um valor + Cadpar.Cpar_nome onde Cadpar.Cpar_id fosse 2
E assim por diante.

Tive que fazer isso, pois o usuário quer a liberdade de ter (ou não) 30 campos de parâmetros e flexível.

Sei que não tenho um campo "ID" para associar uma tabela à outra.

Será que tem como fazer algo, tipo "Typecast" dos nomes de uma tabela em relação ao ID de outra ?

Ou a única solução seria mesmo montar outra tabela com:
Equipo_ID + 30 campos para os valores e associar à tabela de tipos de parâmetros ?

Desde já agradeço a todos.
Aler Tess

Aler Tess

Curtidas 0

Respostas

Jhonatan Pereira

Jhonatan Pereira

14/10/2014

Pelo que me lembro a cláusula INNER JOIN faz isso.

https://www.devmedia.com.br/clausulas-inner-join-left-join-e-right-join-associacao-de-tabelas-sql-server-2008-parte-2/18930

Qualquer coisa responde aí.
GOSTEI 0
POSTAR