SELECT 列名以数字开头
SELECT column name starting with numeral
这是出于病态的好奇心。我这里有一个 非常 名字很糟糕的 table:
CREATE TABLE badtable (
id INT PRIMARY KEY,
"customer name" VARCHAR(63),
"order" VARCHAR(12),
"1st" date,
"last-date" date
);
我试图展示您何时可能迫切需要分隔的列名。但是,以下不是错误:
SELECT
"customer name",
"order",
1st, -- no delimiter
"last-date"
FROM badtable;
相反,它很高兴地给了我一个名为 st
.
的专栏
这适用于 PostgreSQL 和 Microsoft SQL 服务器,因此它不限于其中之一的怪癖。
如何解释 1st
列名称?
在某些情况下,只要 DBMS 能够明确读取表达式,就不需要空格。
select 1st
选1,后面是别名。因此与
相同
select 1 st
或
select 1 as st
这是出于病态的好奇心。我这里有一个 非常 名字很糟糕的 table:
CREATE TABLE badtable (
id INT PRIMARY KEY,
"customer name" VARCHAR(63),
"order" VARCHAR(12),
"1st" date,
"last-date" date
);
我试图展示您何时可能迫切需要分隔的列名。但是,以下不是错误:
SELECT
"customer name",
"order",
1st, -- no delimiter
"last-date"
FROM badtable;
相反,它很高兴地给了我一个名为 st
.
这适用于 PostgreSQL 和 Microsoft SQL 服务器,因此它不限于其中之一的怪癖。
如何解释 1st
列名称?
在某些情况下,只要 DBMS 能够明确读取表达式,就不需要空格。
select 1st
选1,后面是别名。因此与
相同select 1 st
或
select 1 as st