0
我想要做的就是能够使用do
块设置一些变量,然后使用这些变量将查询返回到STDOUT
。返回来自do块的查询
DO $$
DECLARE book_name TEXT;
DECLARE book_slug TEXT;
BEGIN
book_name := 'Ise Monogatari';
book_slug := 'ise';
SELECT bk.id,
bk.created_at,
bk.updated_at,
bk.title,
bk.japanese_title,
bk.content,
bk.description,
'public/cjp/' || book_slug || '/images/cover.png' cover_image_path,
'public/cjp/' || book_slug || '/images/title.png' title_image_path,
'public/cjp/' || book_slug || '/images/thumb_left.png' thumbnail_path,
'public/cjp/' || book_slug || '/images/background.png' background_image_path,
bk.about,
bk.published
FROM books bk
WHERE bk.title = book_name;
END $$;
我得到以下错误:
[42601] ERROR: query has no destination for result data
Hint: If you want to discard the results of a SELECT, use PERFORM instead.
Where: PL/pgSQL function inline_code_block line 8 at SQL statement
任何帮助表示赞赏。
谢谢!与往常一样,我应该仔细阅读手册。 –
初读时不知道要找什么。但幸运的是有stackoverflow! – klin
如果你想从做bloack返回一些日期,你可以使用GUC或TEMP TABLE也 –