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

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

我试图使用SELECT语句从某个MySQL表中获取除一个之外的所有列。有什么简单的方法吗?

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


肥皂起泡泡
浏览 1052回答 3
3回答

交互式爱情

实际上有一种方法,你当然需要有权限来做这件事.SET&nbsp;@sql&nbsp;=&nbsp;CONCAT('SELECT&nbsp;',&nbsp;(SELECT&nbsp;REPLACE(GROUP_CONCAT(COLUMN_NAME),&nbsp;'<columns_to_omit>,',&nbsp;'')&nbsp; FROM&nbsp;INFORMATION_SCHEMA.COLUMNS&nbsp;WHERE&nbsp;TABLE_NAME&nbsp;=&nbsp;'<table>'&nbsp;AND&nbsp;TABLE_SCHEMA&nbsp;=&nbsp;'<database>'),&nbsp;' &nbsp;FROM&nbsp;<table>');PREPARE&nbsp;stmt1&nbsp;FROM&nbsp;@sql;EXECUTE&nbsp;stmt1;顶替<table>, <database> and <columns_to_omit>

泛舟湖上清波郎朗

在MySQL定义(手册)中没有这样的东西。但是如果你有很多列col1, ...,&nbsp;col100,以下内容可能是有用的:mysql>&nbsp;CREATE&nbsp;TEMPORARY&nbsp;TABLE&nbsp;temp_tb&nbsp;SELECT&nbsp;*&nbsp;FROM&nbsp;orig_tb;mysql>&nbsp;ALTER&nbsp;TABLE&nbsp;temp_tb&nbsp;DROP&nbsp;col_x;mysql>&nbsp;SELECT&nbsp;*&nbsp;FROM&nbsp;temp_tb;

UYOU

在这种情况下,视图会更好吗?CREATE&nbsp;VIEW&nbsp;vwTableas&nbsp;&nbsp;SELECT&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;col1&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;,&nbsp;col2&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;,&nbsp;col3&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;,&nbsp;col..&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;,&nbsp;col53&nbsp;&nbsp; FROM&nbsp;table
打开App,查看更多内容
随时随地看视频慕课网APP