GreenPlum中日常SQL脚本

一个新手
发布: 2017-09-19 09:40:46
原创
2096 人浏览过

--1.指定月份总共多少天

SELECT EXTRACT(DAY FROM CAST('2017-08-01' AS DATE) + INTERVAL '1 month' - INTERVAL '1 day')

SELECT EXTRACT(DAY FROM CAST(TO_CHAR(NOW(),'YYYY-MM')||'-01' AS DATE) + INTERVAL '1 month' - INTERVAL '1 day')
登录后复制

--2.修改默认搜索(search_path)路径

SHOW search_path;
SET search_path TO your_schema_name;
登录后复制

--3.更改schema所有者

ALTER SCHEMA your_schema_name OWNER TO other_user;
登录后复制

--4.修改表的所有者

ALTER TABLE your_table_name OWNER TO other_user;
登录后复制

--5.授予指定用户查询或所有权限

GRANT SELECT ON TABLE your_table_name TO other_user;
GRANT ALL ON TABLE your_table_name TO other_user;
登录后复制

--6.授予指定用户schema使用权限

GRANT USAGE ON SCHEMA your_schema_name TO other_user;
登录后复制

--7.回收指定用户schema使用权限

REVOKE ALL ON SCHEMA your_schema_name FROM other_user;
登录后复制

--不同对象授权关键字

TABLES,VIEWS,SEQUENCES: SELECT INSERT UPDATE DELETE RULE ALL
EXTERNAL TABLES: SELECT RULE ALL
DATABASES: CONNECT CREATE TEMPORARY|TEMP ALL
FUNCTIONS: EXECUTE
PROCEDURAL LANGUAGES: USAGE
SCHEMAS: CREATE USAGE ALL
登录后复制

--8.批量授予函数执行权限

SELECT 'GRANT EXECUTE ON FUNCTION '||routines.routine_name||'('||STRING_AGG(parameters.data_type,',' ORDER BY parameters.ordinal_position)||') TO other_user;' batchgrant
FROM information_schema.routines
JOIN information_schema.parameters ON routines.specific_name=parameters.specific_name
WHERE routines.specific_schema='product'
GROUP BY routines.routine_name
登录后复制

以上是GreenPlum中日常SQL脚本的详细内容。更多信息请关注PHP中文网其他相关文章!

相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!