/
필수 SQL 쿼리

필수 SQL 쿼리

SQL 쿼리 :

원하는 데이터베이스 클라이언트에서 다음 SQL 조회를 실행하십시오.

USE crowd;
  1. 비활성 사용자 목록 :

     

    SELECT id, user_name, active, first_name, last_name, created_date, directory_id FROM cwd_user WHERE active = 'F';
  2. 통합 된 Atlassian 응용 프로그램 (JIRA, Confluence, Stash 등)에 로그인하지 않은 사용자 목록 :

     

    SELECT cwd_user.user_name, cwd_user.id, cwd_user.first_name, cwd_user.last_name, cwd_directory.id, cwd_directory.directory_name FROM cwd_user JOIN cwd_directory ON cwd_user.directory_id = cwd_directory.id WHERE cwd_user.id NOT IN(SELECT user_id FROM cwd_user_attribute);
  3. 일정 기간 동안 통합 된 Atlassian 응용 프로그램에 로그인하지 않은 사용자 목록 :
    • MySQL

     

    SELECT cwd_user.user_name, cwd_user.id, cwd_user.first_name, cwd_user.last_name, cwd_directory.id, cwd_directory.directory_name, from_unixtime(cwd_user_attribute.attribute_value/1000) FROM cwd_user JOIN cwd_directory ON cwd_user.directory_id = cwd_directory.id JOIN cwd_user_attribute ON cwd_user.id = cwd_user_attribute.user_id WHERE DATEDIFF((NOW()), (from_unixtime(cwd_user_attribute.attribute_value/1000))) > 90;

     

    • PostgreSQL

     

    SELECT cwd_user.user_name, cwd_user.active, cwd_user.id, cwd_user.first_name, cwd_user.last_name, cwd_directory.id, cwd_directory.directory_name, to_timestamp(CAST(cwd_user_attribute.attribute_value as double precision)/1000) FROM cwd_user JOIN cwd_directory ON cwd_user.directory_id = cwd_directory.id JOIN cwd_user_attribute ON cwd_user.id = cwd_user_attribute.user_id WHERE (EXTRACT(EPOCH FROM now())) - (CAST(cwd_user_attribute.attribute_value as double precision)/1000) >= 10627200 and cwd_user_attribute.attribute_name = 'lastAuthenticated' AND cwd_user.active = 'T' ORDER BY to_timestamp(CAST(cwd_user_attribute.attribute_value as double precision)/1000) DESC;

    (info) 숫자 "10627200"은 초 단위이므로 10627200 / 60 / 60 / 24 = 123 일입니다. 필요에 따라 이 값을 수정할 수 있습니다.

     

  4. 사용자에 대한 최종 로그인 날짜 목록 :
    • MySQL

     

    SELECT cwd_user.user_name, cwd_user.id, cwd_user.first_name, cwd_user.last_name, cwd_directory.id, cwd_directory.directory_name, from_unixtime(cwd_user_attribute.attribute_value/1000) FROM cwd_user JOIN cwd_directory ON cwd_user.directory_id = cwd_directory.id JOIN cwd_user_attribute ON cwd_user.id = cwd_user_attribute.user_id WHERE cwd_user_attribute.attribute_name = 'lastAuthenticated';

     

    • PosgreSQL

     

    SELECT cwd_user.user_name, cwd_user.id, cwd_user.first_name, cwd_user.last_name, cwd_directory.id, cwd_directory.directory_name, to_timestamp(CAST(cwd_user_attribute.attribute_value as double precision)/1000) FROM cwd_user JOIN cwd_directory ON cwd_user.directory_id = cwd_directory.id JOIN cwd_user_attribute ON cwd_user.id = cwd_user_attribute.user_id WHERE cwd_user_attribute.attribute_name = 'lastAuthenticated';

     

    (info)  Crowd는 epoc 시간을 기반으로 마지막 로그인 시간을 저장합니다. MySQL에서 from_unixtime값, PostgreSQL에서 to_timestamp값은 Unix 타임 스탬프를 초 단위로 반환합니다. 따라서 cwd_user_attribute.attribute_value의 반환 값을 1000으로 나눠 밀리 초를 버립니다.


 

외부 데이터베이스 (예 : Microsoft SQL Server 및 Oracle) 필수 형식과 일치하도록 위의 SQL 쿼리를 수정해야 할 수도 있습니다.

 

참조 :

https://confluence.atlassian.com/crowdkb/essential-sql-queries-for-crowd-696519745.html

Related content

Atlassian 제품 이슈 해결
Atlassian 제품 이슈 해결
Read with this
계정 접속 이력 확인
계정 접속 이력 확인
More like this
사용자 접속 이력 확인
사용자 접속 이력 확인
More like this
Locked 걸린 필드의 잠금해제 방법
Locked 걸린 필드의 잠금해제 방법
More like this
사용자 프로비저닝 및 프로비저닝 해제
사용자 프로비저닝 및 프로비저닝 해제
More like this
Crowd 의 자동 동기화 이슈
Crowd 의 자동 동기화 이슈
More like this