Fórum Unir 2 tabelas pelo Nome da Coluna e não pelo conteúdo do campo. #497794
14/10/2014
0
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.
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
Curtir tópico
+ 0
Responder
Posts
15/10/2014
Jhonatan Pereira
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í.
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í.
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)