是否有任何RDBMS实现类似的东西SELECT * EXCEPT?我所追求的是获取除特定TEXT/BLOB字段之外的所有字段,我只想选择其他所有字段.
几乎每天我都会向我的同事抱怨有人应该实现这个......它非常烦人,它不存在.
编辑:我理解大家的关注SELECT *.我知道与之相关的风险SELECT *.但是,至少在我的情况下,这不会用于任何生产级代码,甚至是开发级代码; 严格用于调试,当我需要轻松查看所有值时.
正如我在一些评论中所说,我工作的地方严格来说是一个命令行商店,在ssh上做一切.这使得很难使用任何gui工具(不允许与数据库的外部连接)等.
谢谢你的建议.
如何选择除一列之外的表的所有列?
我有近259列我不能在SELECT声明中提到258列.
还有其他办法吗?
可能重复:
选择除MySQL中的所有列以外的所有列?
我想知道有没有办法从我的数据库中的表中选择除一个字段之外的所有字段.
我知道我可以在select查询中描述字段名称.
例如:
SELECT fieldname1, fieldname2, fieldname3, fieldname4 FROM tablename;
Run Code Online (Sandbox Code Playgroud)
但我的问题是,有没有办法以简单的方式做到这一点......就像这样
SELECT * FROM tablename EXCEPT(fieldname3);
Run Code Online (Sandbox Code Playgroud)
我正在使用MySQL和Zend框架.
HiveQL(以及一般的SQL)中的常见查询构建模式是选择所有列(SELECT *)或显式指定的列(SELECT A, B, C).SQL没有内置机制来选择除指定的列集之外的所有列.
如本SO问题所述,有各种排除某些列的机制,但没有一种适用于HiveQL.(例如,创建一个临时表,SELECT *然后ALTER TABLE DROP使用其某些列的想法会在大数据环境中造成严重破坏.)
忽略关于选择除了一些列以外的所有列是否是一个好主意的意识形态讨论,这个问题是关于用这种能力扩展Hive的可能方法.
在Hive 0.13.0之前,SELECT可以采用基于正则表达式的列,例如,property_.*在反引号引用的字符串中.@ invoketheshell下面的答案指的是这个功能,但它是有代价的,即当启用此功能时,Hive不能接受其中包含非标准字符的列,例如,$foo或x/y.这就是Hive开发人员默认情况下在0.13.0中关闭此行为的原因.我正在寻找适用于任何列名称的通用解决方案.
生成通用表的UDF(UDTF)当然可以这样做,因为它可以操作模式.由于我们不打算生成新行,有没有办法使用简单的基于行的UDF解决这个问题?
这似乎是Web上许多帖子的常见问题,显示如何为各种数据库解决它,但我还没有找到Hive的解决方案.是否有代码可以执行此操作?
在mysql中,是否可以从表中获取所有列和数据,但是将ID列选为NULL?
就像是
SELECT *, id AS (SELECT '') FROM my_table WHERE 1
Run Code Online (Sandbox Code Playgroud)
我想拉入ID列,因此它不会弄乱后续数据加载的列数,但我想消除列的值,因此它不会导致密钥冲突.
谢谢!
是否可以选择除一列之外的所有列?
这里是所有列名:id,name,address,age
SELECT id, name, address from TBLUser
Run Code Online (Sandbox Code Playgroud)
我不想使用这个select语句,因为我的表的列数彼此不同.
所以我想在Oracle DB中选择一系列行.我需要这样做,因为我在表中有数百万行,我想将结果分页给用户(如果你知道在客户端执行此操作的另一种方法,我使用JavaFX,如果它很重要,但我不认为通过网络发送所有数据以在客户端对它们进行分页是个好主意.
所以看完这篇文章后:SQL ROWNUM如何在特定范围之间返回行,我有以下查询:
Select * From (Select t.*, rownum r from PERSON t) Where r > 100 and r < 110;
Run Code Online (Sandbox Code Playgroud)
该100和110只是例子.在应用程序中,我只要求下限并添加10_000的大小以获取下一个10_000行.
现在rownum列出现在结果中,我不想看到它.由于我对SQL不是很熟悉,所以我的问题是:
Select * From Person Where rownum > 100 and rownum < 110;返回0行?为什么没有简单的方法做某事Select ... FROM ... WHERE rownum BETWEEN lowerBound AND upperBound?
如何摆脱r结果值中的列?从那里SQL使用SELECT*[除了columnA] FROM tableA排除一列?我显然需要创建一个视图或临时表,但考虑我的查询还有另一种方法吗?
它确保正确的分页吗?我读了这篇文章 "用ROWNUM分页",它说我应该通过一些独特的东西来命令这些值以获得一致的分页(所以rownum如果你能确认,我猜测排序很好).它不会破坏使用目的FIRST_ROWS(N)吗?
我希望它不是太多,我可以分成不同的问题,但我认为让它们紧密相关是有意义的.
谢谢 :)
我在表中有很多列,并希望SELECT * FROM Table除了一列(例如:位置),而不必列出我想要使用的所有列.
SELECT * EXCEPT id FROM Table???
我有一个temparory table.temp表是使用select into语句创建的.
临时表列是动态创建的.列数可能会有所不同.
For eg.
Temparory table
ID,Addrss1,Address2,Address3
ID, Address1,Address2,Address3,Address4,Address5.....
Run Code Online (Sandbox Code Playgroud)
所有临时列都将第一列作为ID.我需要创建一个包含基表和临时表的视图
我需要在视图的select语句中避免临时表的第一列.我不能使用temp.*.它将需要ID.我不想在select语句中使用ID.
任何帮助赞赏
sql ×8
sql-server ×4
mysql ×3
select ×3
t-sql ×2
apache-spark ×1
database ×1
hive ×1
hiveql ×1
oracle ×1
pagination ×1
php ×1
rownum ×1
sqlite ×1
udf ×1