一尘不染

选择除MySQL中的一列以外的所有列?

mysql

我正在尝试使用select语句从某个MySQL表中获取除一个以外的所有列。有没有简单的方法可以做到这一点?

编辑:此表中有53列(不是我的设计)


阅读 508

收藏
2020-05-17

共1个答案

一尘不染

实际上有一种方法,您当然需要具有执行此操作的权限…

SET @sql = CONCAT('SELECT ', (SELECT REPLACE(GROUP_CONCAT(COLUMN_NAME), '<columns_to_omit>,', '') FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = '<table>' AND TABLE_SCHEMA = '<database>'), ' FROM <table>');

PREPARE stmt1 FROM @sql;
EXECUTE stmt1;

更换 <table>, <database> and <columns_to_omit>

2020-05-17