首页 新闻 会员 周边 捐助

一個表,查詢時只不要那一列,SQL 咋寫?

0
[待解决问题]

比如abc 表中含30列信息,但是我只想要 其中的29列,那一列不要,簡單的寫法有?(不想一個一個寫那29列)
有大佬知道如何寫嗎?

Themis_Yan的主页 Themis_Yan | 菜鸟二级 | 园豆:202
提问于:2023-03-11 09:10
< >
分享
所有回答(6)
0
dudu | 园豆:29333 (高人七级) | 2023-03-11 09:22
0

最好是写具体字段,以免表结构变了影响业务。

可以用临时表
select * into temp from abc
alter table temp drop column fff

LiveCoding | 园豆:502 (小虾三级) | 2023-03-11 16:43
0

目前只能列出需要的列,然后手工去掉不需要的列。
SQL的弱点(2):不支持从所有列中去除某列

ycyzharry | 园豆:25683 (高人七级) | 2023-03-12 18:28
0

换一种思路。
把字段全部取出来
然后定义一个类 这类只有29个字段
将数据库取出的数据在内存转化一下 convertBean

利用反射,将一个java bean对象转换为另一个对象
https://blog.csdn.net/weixin_39770927/article/details/94005079

楠木大叔 | 园豆:2083 (老鸟四级) | 2023-03-12 21:15
0

以ORACLE为例:oracle中有一些动态视图可以查询到表的列信息如 ALL_TAB_COLUMNS,同时搭配行列转换函数 listagg(),就可以用拼接的方式获取需要的语句
select q'<SELECT >'||LISTAGG(A.column_name, ',') within group (order by A.column_name)||q'< from ABC WHERE ....;>' from ALL_TAB_COLUMNS A where table_name='ABC' and owner='XXX' AND column_name!='A';

青春猪头少年 | 园豆:205 (菜鸟二级) | 2023-03-13 16:57
0

rowid不可以吗

iRyz | 园豆:210 (菜鸟二级) | 2023-04-03 16:26
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册