2

这个问题只是为了好玩。

-- Prepare scheme
CREATE USER "AS" IDENTIFIED BY 123;
ALTER USER "AS" DEFAULT TABLESPACE "USERS" QUOTA 5M ON "USERS";
CREATE TABLE "AS"."AS" ("AS" INT);

-- Now we are ready to have fun
select "AS"."AS" AS "AS" from "AS"."AS" "AS";  -- Rate = 7/9 ~ 78%

你能打破这个纪录吗?不允许使用
类似的字符串文字。'AS'

4

2 回答 2

3

REF如果我们做类型,我们可以做很多事情:

SQL> create or replace type "AS" as object (id number, "As" ref "AS") ;
  2  /

Type created.

SQL> CREATE TABLE "as" OF "AS";

Table created.

SQL> select ("As")."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"
  2         ."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"
  3         ."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"
  4         ."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"
  5         ."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"
  6         ."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"
  7         ."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"
  8         ."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"
  9         ."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"
 10         ."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"
 11         ."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"
 12         ."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"
 13         ."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"
 14         ."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"
 15         ."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"
 16         ."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"
 17         ."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"
 18         ."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"
 19         ."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"
 20         ."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"
 21         ."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"
 22         ."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"
 23         ."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"
 24         ."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"
 25         ."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"
 26         ."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"
 27         ."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"
 28         ."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"
 29         ."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As"."As" "AS"
 30      from "as" "AS";

no rows selected

等等..无聊地打了这么多As。

于 2013-03-15T14:35:51.960 回答
2

很难击败这样的 AS 密度,但我将使用 Cast()、公共表表达式、分区表和闪回查询来代替数量......

with "as" AS (
  select cast("AS"."AS" AS integer) AS "AS"
  from  "AS"."AS" partition ("AS") "AS" AS of scn 1234567)
select "as"."as"
from   "as"

可能也可以在那里打一个 dblink 但不确定语法是否有效......

with "as" AS (
  select cast("AS"."AS" AS integer) AS "AS"
  from  "AS"."AS"@"AS" partition ("AS") "AS" AS of scn 1234567)
select "as"."as"
from   "as"
于 2013-03-15T11:25:45.620 回答