Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Mysql Como selecionar apenas de uma coluna se a coluna existir


Esta consulta informará se existe uma coluna.
SELECT * 
FROM information_schema.COLUMNS 
WHERE 
    TABLE_SCHEMA = 'db_name' 
AND TABLE_NAME = 'table_name' 
AND COLUMN_NAME = 'column_name'

Se você quiser verificar se algumas colunas existem, execute uma instrução select, você precisa primeiro verificar se suas colunas existem. Em seguida, execute a seleção:
if (exists (SELECT * FROM information_schema.COLUMNS WHERE TABLE_NAME = 'myview' AND COLUMN_NAME = 'Period') and exists (SELECT * FROM information_schema.COLUMNS WHERE TABLE_NAME = 'myview' AND COLUMN_NAME = 'Country'))
begin
    select `Period`, `Country` from myview
end

Se a condição IF for verdadeira, você executará qualquer coisa dentro de BEGIN e END.