【发布时间】:2019-02-05 16:48:19
【问题描述】:
假设我有表 test 与列 a,b 和 c 和 test2 与同一列。我可以创建一个表 test 和 test 2 连接在一起并按表 test 中的字段 c 排序的视图,而不在最终输出中显示它吗?就我而言:
CREATE VIEW AS test_view AS
SELECT a,b FROM (SELECT * FROM test ORDER BY c)
JOIN test2 ON test.a =test2.a;
好的,我测试了它,这是不可能的,因为洗牌阶段所以也许有另一种解决方案可以以某种方式做到这一点?表太大,无法进行广播连接。
当然可以
CREATE VIEW AS test_view AS
SELECT a,b,c FROM test
JOIN test2 ON test.a =test2.a
ORDER BY c
然后
CREATE VIEW AS final_view AS
SELECT a,b FROM test_view;
但是这个解决方案不是最优的
有什么想法吗?
【问题讨论】:
-
这里的问题是什么,您要按选择列列表中不存在的列进行排序吗?
-
是的,我想按 c 列排序,这在最终视图中不可见