SQL 查询带美元符号的 table
SQL to querying a table with a dollar sign
我正在使用 Looker 仪表板软件(请参阅:looker.com)。它在数据库的 looker_scratch
模式中创建具有长名称的临时 tables,每个名称都包含一个美元符号。
使用 Looker 本身的 "SQL Runner" 可以直接查询这些内容,它能够以某种方式转义美元符号,但我无法使用第 3 方 SQL 客户端查询它们。
我正在尝试查询这个 table:
SELECT *
FROM looker_scratch.LRUA5D3XQDBPAYU0Q9FLFE_test
但出现错误:
the # of binded parameters < the # of parameter markers
如何查询table?
我试过:
...FROM looker_scratch."LRUA5D3XQDBPAYU0Q9FLFE_test"
- 表示关系不存在
...FROM looker_scratch."LR$5UA5D3XQDBPAYU0Q9FLFE_test"
- 表示关系不存在
...FROM looker_scratch.$LR$5UA5D3XQDBPAYU0Q9FLFE_test$
- 表示语法错误
...FROM looker_scratch.$$LR$5UA5D3XQDBPAYU0Q9FLFE_test$$
- 表示语法错误
...FROM looker_scratch.E'LR$5UA5D3XQDBPAYU0Q9FLFE_test'
- 表示语法错误
尝试按模式选择准确的标识符:
select oid::regclass from pg_class where relname ilike '%5ua5d%';
例如:
so=# create table t."WeirdMix$" ();
CREATE TABLE
Time: 55.750 ms
so=# select oid::regclass from pg_class where relname ilike '%mix%';
oid
---------------
t."WeirdMix$"
(1 row)
Time: 90.814 ms
我正在使用 Looker 仪表板软件(请参阅:looker.com)。它在数据库的 looker_scratch
模式中创建具有长名称的临时 tables,每个名称都包含一个美元符号。
使用 Looker 本身的 "SQL Runner" 可以直接查询这些内容,它能够以某种方式转义美元符号,但我无法使用第 3 方 SQL 客户端查询它们。
我正在尝试查询这个 table:
SELECT *
FROM looker_scratch.LRUA5D3XQDBPAYU0Q9FLFE_test
但出现错误:
the # of binded parameters < the # of parameter markers
如何查询table?
我试过:
...FROM looker_scratch."LRUA5D3XQDBPAYU0Q9FLFE_test"
- 表示关系不存在...FROM looker_scratch."LR$5UA5D3XQDBPAYU0Q9FLFE_test"
- 表示关系不存在...FROM looker_scratch.$LR$5UA5D3XQDBPAYU0Q9FLFE_test$
- 表示语法错误...FROM looker_scratch.$$LR$5UA5D3XQDBPAYU0Q9FLFE_test$$
- 表示语法错误...FROM looker_scratch.E'LR$5UA5D3XQDBPAYU0Q9FLFE_test'
- 表示语法错误
尝试按模式选择准确的标识符:
select oid::regclass from pg_class where relname ilike '%5ua5d%';
例如:
so=# create table t."WeirdMix$" ();
CREATE TABLE
Time: 55.750 ms
so=# select oid::regclass from pg_class where relname ilike '%mix%';
oid
---------------
t."WeirdMix$"
(1 row)
Time: 90.814 ms