sql >> Base de Datos >  >> RDS >> Mysql

Mysql Cómo seleccionar solo de una columna si la columna existe

Esta consulta le dará si existe una columna.

SELECT * 
FROM information_schema.COLUMNS 
WHERE 
    TABLE_SCHEMA = 'db_name' 
AND TABLE_NAME = 'table_name' 
AND COLUMN_NAME = 'column_name'

Si desea verificar si existen algunas columnas, realice una declaración de selección, primero debe verificar que existan sus columnas. Luego realice la selección:

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

Si la condición IF es verdadera, ejecutará cualquier cosa dentro de BEGIN y END.