是否有方法为查询提供简写符号?
离。
Q1 = (select * from tablename2)
Q2 = (select * from tablename2)
select name from Q1;
select name from Q2;
我知道观点,但我不打算使用它们。
答案 0 :(得分:2)
CREATE VIEW Q1 AS (
SELECT
name,
id,
othercol
FROM tablename1
);
/* Works with a WHERE clause too */
CREATE VIEW Q2 AS (
SELECT
name,
id,
othercol
FROM tablename2
WHERE othercol = 'some limitation'
);
SELECT name FROM Q1;
/* aggregates work too */
SELECT name, COUNT(*) AS numrows FROM Q2 GROUP BY name;
注意:不建议视图中的SELECT *
(或实际生产代码中的任何位置)。始终明确选择列表中的列,以便它们的顺序是确定性的。
或者,使用CREATE TEMPORARY TABLE ... SELECT
syntax创建临时表。
CREATE TEMPORARY TABLE Q1
SELECT name, id, othercol FROM tablename1;
/* select from it */
SELECT name FROM Q1 WHERE id IN (1,2,3,4,5)
/* When done, drop it. Otherwise, it will be dropped when the client connection terminates. */
DROP TABLE Q1;
答案 1 :(得分:0)
我认为你在谈论观点。查看docs了解他们。
答案 2 :(得分:0)
视图类似于您要查找的内容。
但对于其他查询或更新,“视图”不是“别名”或“外观”的符号方便。一个好的比喻是“视图是虚拟表”。在MSSQL中,“views”也是增强安全性的有效方法。
这是一篇关于这个主题的好文章: