應用場景:sonarqube跨版本公升級後專案和使用者許可權的遷移
8.4版本postgresql
select uuid,name from users where name='vincent';
axqujkrye0v5enzztd15 | vincent
select distinct(component_uuid) from user_roles where user_uuid='axqujkrye0v5enzztd15';
axqk6pfblo3vh9uxu8ba
axqk6ge2lo3vh9uxu8bo
乙個專案對應乙個component_uuid,乙個component_uuid會對應多個使用者的user_uuid
查詢使用者賦權了哪些專案
select name,long_name from components where scope='prj' and uuid in ('axqk6pfblo3vh9uxu8ba','axqk6ge2lo3vh9uxu8bo') ;
資料組的關係
select uuid,name from groups where name='group_test';
axqu_sr9yfdex7s_l9jq
select distinct(component_uuid) from group_roles where group_uuid='axqu_sr9yfdex7s_l9jq';
axqk6pfblo3vh9uxu8ba
select name,long_name from components where scope='prj' and uuid in ('axqk6pfblo3vh9uxu8ba') ;
反向查詢
select uuid,name from components where scope='prj' and name='vincent-test';
axqk6pfblo3vh9uxu8ba
查使用者select uuid,name from users where uuid in (select distinct(user_uuid) from user_roles where component_uuid='axqk6pfblo3vh9uxu8ba' );
查使用者組
select uuid,name from groups where uuid in (select distinct(group_uuid) from group_roles where component_uuid='axqk6pfblo3vh9uxu8ba' );
6.7版本 mysql
mysql> select id,name from users where name='vincent';
| id | name |
| 8 | vincent |
select * from user_roles where user_id=8;
| id | user_id | resource_id | role | organization_uuid |
| 26 | 8 | 4730 | user | awuwcpr_kt4je0e1q7on |
| 27 | 8 | 4730 | codeviewer | awuwcpr_kt4je0e1q7on |
| 30 | 8 | 4730 | scan | awuwcpr_kt4je0e1q7on |
| 148 | 8 | 10275 | user | awuwcpr_kt4je0e1q7on |
| 149 | 8 | 10275 | codeviewer | awuwcpr_kt4je0e1q7on |
| 150 | 8 | 10275 | scan | awuwcpr_kt4je0e1q7on |
mysql> select * from group_roles;
| id | group_id | resource_id | role | organization_uuid |
mysql> select * from groups_users;
| user_id | group_id |
mysql> select * from groups;
| id | name | description | created_at | updated_at | organization_uuid |
select id,name from projects where scope='prj' and id in (4730,10275);
以使用者角色表和組角色表的resource_id 關聯projects表的id欄位。
可以通過專案名反查使用者和使用者組
select id,name from projects where name='vincent-test';
| 7522 | vincent-test |
查詢分配的使用者
select id,name from users where id in (select distinct(user_id) from user_roles where resource_id=7522);
查詢分配的組及使用者
select id,name from groups where id in (select distinct(group_id) from group_roles where resource_id=7522);
| 7 | vincent-test |
select id,name from users where id in (select user_id from groups_users where group_id=7 );
資料分析 使用者關係 開篇
最近突然對 的使用者關係感起了興趣。當然了,萬事萬物都是有原因的,只是有的是直接原因,有的是間接原因 有的原因很明顯,有的原因不明顯 有的原因很容易說清楚,有的原因說不明白。總之一句話,肯定是原因的。引發這個系列話題的原因是,在我收到的人人或者是校內傳送的的推薦關注郵件中,或者是各大微博 sns社群...
JTS 空間資料關係分析
jts geometry關係分析 分析型別 含義緩衝區分析 buffer 包含所有的點在乙個指定距離內的多邊形和多多邊形 凸殼分析 convexhull 包含幾何形體的所有點的最小凸殼多邊形 外包多邊形 交叉分析 intersection a b 交叉操作就是多邊形ab中所有共同點的集合 聯合分析 ...
關係與非關係型資料庫對比及分析
資料庫關係型非關係型 定義泛指採用了關係模型來組織資料的資料庫。關係模型指的就是二維 模型,而乙個關係型資料庫就是由二維表及其之間的聯絡所組成的乙個資料組織。指非關係型的,分布式的,且一般不保證遵循acid原則的資料儲存系統 不同的表或庫之間沒有相關聯性 非關係型資料庫嚴格上不是一種資料庫,應該是一...