In MySQL 8.0.23 and later, we have the ability to create invisible columns when creating or altering a table.
An invisible column is one that is hidden to certain SQL queries, but can be accessed if explicitly referenced.
Basically, invisible columns are hidden to queries that use the asterisk wildcard (*) in their SELECT list. But they can be accessed by explicitly referencing the column by its name.
Invisible tables are hidden from the TABLE statement, as this statement provides no way of selecting individual columns.