首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >quine (自生成) SQL查询

quine (自生成) SQL查询
EN

Stack Overflow用户
提问于 2010-10-24 05:35:49
回答 5查看 2.4K关注 0票数 5

This是一篇非常有趣的维基文章,关于打印自己的源代码而不访问物理源文件(在文件系统中)的程序。文章中的例子包括C和Scheme quine程序(是的,它们看起来就是这样叫的)。我记得很久以前(大约5年前)有人问我是否可以写一个“返回自身”的SQL查询。当时我几乎没有考虑过它(老实说,我根本没有考虑过它)。但在读完这篇文章后,我想起了那件事。现在我想说的是,提出这个问题的人并不是100%可信的,因为他很可能根本不知道自己在说什么。但也许这是可能的?那么,有没有人知道是否存在quine SQL查询,无论“返回本身”在那个上下文中可能是什么意思。谢谢。

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2010-10-24 05:40:37

SQL Server版本,来自here

代码语言:javascript
复制
SELECT Replace(Replace(
'SELECT REPLACE(REPLACE("$",CHAR(34),CHAR(39)),CHAR(36),"$") AS Quine',
Char(34), Char(39)), Char(36),
'SELECT REPLACE(REPLACE("$",CHAR(34),CHAR(39)),CHAR(36),"$") AS Quine')
AS Quine 
票数 7
EN

Stack Overflow用户

发布于 2013-11-04 20:07:06

Oracle版本:

代码语言:javascript
复制
SELECT REPLACE(REPLACE('SELECT REPLACE(REPLACE("$",CHR(34),CHR(39)),CHR(36),"$") AS Quine FROM dual',CHR(34),CHR(39)),CHR(36),'SELECT REPLACE(REPLACE("$",CHR(34),CHR(39)),CHR(36),"$") AS Quine FROM dual') AS Quine FROM dual
票数 2
EN

Stack Overflow用户

发布于 2018-11-26 07:36:55

Oracle SQL Revealed一书中的几个解决方案。

123字节

代码语言:javascript
复制
select
replace('@''[@'||chr(93)||''')from dual;','@',q'[select
replace('@''[@'||chr(93)||''')from dual;','@',q]')from dual;

100字节

代码语言:javascript
复制
select
substr(rpad(1,125,'||chr(39)),26)from dual;select
substr(rpad(1,125,'||chr(39)),26)from dual;
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4006189

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档