SELECT 表名 FROM 表名
发布时间:2020-12-13 17:11:50 所属栏目:百科 来源:网络整理
导读:再次看到这段代码,想起来以前随口在QQ群里提过,突然感觉还是记录一下比较好,所以专门开辟新博客分类, 我们来看看 PostgreSQL 代码中都隐藏着什么秘密 。 假如我们发起一条语句: SELECTrolnameFROMpg_authid; 会发生什么事呢?其中一个步骤是确定表中是
再次看到这段代码,想起来以前随口在QQ群里提过,突然感觉还是记录一下比较好,所以专门开辟新博客分类,我们来看看 PostgreSQL 代码中都隐藏着什么秘密。 假如我们发起一条语句: SELECTrolnameFROMpg_authid; 会发生什么事呢?其中一个步骤是确定表中是否有rolname /*Trytoidentifyasanunqualifiedcolumn*/ node=colNameToVar(pstate,colname,false,cref->location); if(node==NULL) { ... /* *Trytofindthenameasarelation.Notethatonly *relationsalreadyenteredintotherangetablewillbe *recognized. * *Thisisahackforbackwardscompatibilitywith *PostQUEL-inspiredsyntax.Thepreferredformnowis *"rel.*". */ rte=refnameRangeTblEntry(pstate,NULL,cref->location,&levels_up); if(rte) node=transformWholeRowRef(pstate,rte,cref->location); 最后一段很奇怪,好在有说明,测试一下确实可用,但是这是我以前从来不知道的用法。 postgres=#SELECTpg_authidFROMpg_authid; pg_authid ----------------------------- (quanzl,t,-1,) (1row) postgres=# 粗略查看了一下 9.4.5 文档,似乎没有关于这个的说明,应该是一个废弃已久的用法。 PostgreSQL代码中隐藏着很多秘密,我要继续挖掘。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |