为了账号安全,请及时绑定邮箱和手机立即绑定

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

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

肥皂起泡泡 2019-06-18 11:06:39
选择MySQL中除一列之外的所有列?我试图使用SELECT语句从某个MySQL表中获取除一个之外的所有列。有什么简单的方法吗?编辑:这个表中有53列(不是我的设计)
查看完整描述

3 回答

?
交互式爱情

TA贡献1712条经验 获得超3个赞

实际上有一种方法,你当然需要有权限来做这件事.

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>


查看完整回答
反对 回复 2019-06-18
?
泛舟湖上清波郎朗

TA贡献1818条经验 获得超3个赞

在MySQL定义(手册)中没有这样的东西。但是如果你有很多列col1, ..., col100,以下内容可能是有用的:

mysql> CREATE TEMPORARY TABLE temp_tb SELECT * FROM orig_tb;mysql> ALTER TABLE temp_tb DROP col_x;mysql> SELECT * FROM temp_tb;


查看完整回答
反对 回复 2019-06-18
?
UYOU

TA贡献1878条经验 获得超4个赞

在这种情况下,视图会更好吗?

CREATE VIEW vwTableas  SELECT  
    col1  
    , col2  
    , col3  
    , col..  
    , col53  
FROM table


查看完整回答
反对 回复 2019-06-18
  • 3 回答
  • 0 关注
  • 1051 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信