New Admins: Register for our new Pure Lecture Series!
Pure's logos
Pure Help Center for Pure Administrators

If you are a researcher, or other non-admin at your institution, click here.

  • Home
  • Announcements
  • Release Notes
  • Technical user guides
  • Training
  • Events
  • Support
  • Contact Us
  • Home
  • Training
  • Technical user guides
  • Integrations
  • Synchronizations
  • Database View Synchronization

How Can We Help?

Search Results

Filter By Category

Contact Us

If you still have questions or prefer to get help directly from an agent, please submit a request.
We’ll get back to you as soon as possible.

Contact us

SQL validation for viewsSQL validation for views

USER_DATA

SQL Description Expected result
select USER_NAME, count(USER_NAME) from USER_DATA group by USER_NAME having count(USER_NAME) > 1;
Verification of dublicate user_names This sql should return 0 rows.
select EMAIL, count(EMAIL) from USER_DATA group by EMAIL having count(EMAIL) > 1;
Verification of dublicate emails_names This sql should return 0 rows.

 

PERSON_DATA

SQL Description Expected result
select PERSON_ID, count(PERSON_ID) from PERSON_DATA group by PERSON_ID having count(PERSON_ID) > 1;
Verification of dublicate person_ids. This SQL should return 0 rows.
select distinct PERSON_DATA.PERSON_ID
FROM PERSON_DATA
 LEFT OUTER JOIN STAFF_ORG_RELATION ON PERSON_DATA.PERSON_ID = STAFF_ORG_RELATION.PERSON_ID
 LEFT OUTER JOIN STUDENT_ORG_RELATION ON PERSON_DATA.PERSON_ID = STUDENT_ORG_RELATION.PERSON_ID
 LEFT OUTER JOIN VISITING_SCHOLAR_ORG_RELATION ON PERSON_DATA.PERSON_ID = VISITING_SCHOLAR_ORG_RELATION.PERSON_ID
 LEFT OUTER JOIN HONORARY_STAFF_ORG_RELATION ON PERSON_DATA.PERSON_ID = HONORARY_STAFF_ORG_RELATION.PERSON_ID
WHERE
 STAFF_ORG_RELATION.ID IS NULL
 AND STUDENT_ORG_RELATION.ID IS NULL
 AND VISITING_SCHOLAR_ORG_RELATION.ID IS NULL
 AND HONORARY_STAFF_ORG_RELATION.ID IS NULL ;
Finds all persons that do not have any organisation relations available. This SQL should return 0 rows.
SELECT PERSON_DATA.PERSON_ID, COUNT(PERSON_DATA.PERSON_ID) FROM PERSON_DATA
JOIN (
SELECT STAFF_ORG_RELATION.PERSON_ID FROM STAFF_ORG_RELATION WHERE PRIMARY_ASSOCIATION IS TRUE
UNION ALL
SELECT STUDENT_ORG_RELATION.PERSON_ID FROM STUDENT_ORG_RELATION WHERE PRIMARY_ASSOCIATION IS TRUE
UNION ALL
SELECT VISITING_SCHOLAR_ORG_RELATION.PERSON_ID FROM VISITING_SCHOLAR_ORG_RELATION WHERE PRIMARY_ASSOCIATION IS TRUE
UNION ALL
SELECT HONORARY_STAFF_ORG_RELATION.PERSON_ID FROM HONORARY_STAFF_ORG_RELATION WHERE PRIMARY_ASSOCIATION IS TRUE
) A ON A.PERSON_ID=PERSON_DATA.PERSON_ID
GROUP BY PERSON_DATA.PERSON_ID
HAVING COUNT(PERSON_DATA.PERSON_ID)>1
Finds all person_ids that have organisation relations that have more than one primary association. This SQL should return 0 rows.
SELECT PERSON_DATA.PERSON_ID, PERSON_DATA.USER_ID FROM PERSON_DATA WHERE NOT PERSON_DATA.USER_ID IS NULL AND USER_ID NOT IN (SELECT ID FROM USER_DATA)
Finds all persons that have relations to users that doesn't exist in the USER_DATA. This SQL should return 0 rows.

 

ORG_RELATION

SQL Description Expected result
SELECT ID, COUNT(id) from (
 SELECT ID from STAFF_ORG_RELATION
 union all select id from STUDENT_ORG_RELATION
 union all select id from VISITING_SCHOLAR_ORG_RELATION
 union all select id from HONORARY_STAFF_ORG_RELATION
 ) as result group by ID having count(ID) > 1;
Verification of duplicate ids across relation tables
 
This SQL should return 0 rows.

 

STAFF_ORG_RELATION

SQL Description Expected result
select ID, count(ID) from STAFF_ORG_RELATION group by ID having count(ID) > 1;
Verification of duplicate ids This SQL should return 0 rows.
SELECT ID, COUNT(id) from (
 SELECT ID from STAFF_ORG_RELATION
 union all select id from STUDENT_ORG_RELATION
 union all select id from VISITING_SCHOLAR_ORG_RELATION
 union all select id from HONORARY_STAFF_ORG_RELATION
 ) as result group by ID having count(ID) > 1;
Verification of duplicate ids across relation tables
 
This SQL should return 0 rows.

 

STUDENT_ORG_RELATION

SQL Description Expected result
select ID, count(ID) from STUDENT_ORG_RELATION group by ID having count(ID) > 1;
Verification of duplicate ids This SQL should return 0 rows.
select * from STUDENT_ORG_RELATION as s
    left join organisation_data as o1 on (o1.organisation_id = s.org_source_id)
    left join organisation_data as o2 on (o2.organisation_id = s.org_id)
    left join organisation_data as o3 on (o3.organisation_id = s.org_pure_id)
    left join organisation_data as o4 on (o4.organisation_id = s.org_classified_ids_id)
    where o1.organisation_id is null AND o2.organisation_id is null
    AND o3.organisation_id is null AND o4.organisation_id is null;
Verifies that organisation data matches organisation relations This SQL should return 0 rows.

 

VISITING_SCHOLAR_ORG_RELATION

SQL Description Expected result
select ID, count(ID) from VISITING_ORG_RELATION group by ID having count(ID) > 1;
Verification of duplicate ids This SQL should return 0 rows.
select * from VISITING_ORG_RELATION as s
    left join organisation_data as o1 on (o1.organisation_id = s.org_source_id)
    left join organisation_data as o2 on (o2.organisation_id = s.org_id)
    left join organisation_data as o3 on (o3.organisation_id = s.org_pure_id)
    left join organisation_data as o4 on (o4.organisation_id = s.org_classified_ids_id)
    where o1.organisation_id is null AND o2.organisation_id is null
    AND o3.organisation_id is null AND o4.organisation_id is null;
Verifies that organisation data matches organisation relations This SQL should return 0 rows.

 

HONORARY_STAFF_ORG_RELATION

SQL Description Expected result
select ID, count(ID) from HONORARY_STAFF_ORG_RELATION group by ID having count(ID) > 1;
Verification of duplicate ids This SQL should return 0 rows.
select * from HONORARY_STAFF_ORG_RELATION as s
    left join organisation_data as o1 on (o1.organisation_id = s.org_source_id)
    left join organisation_data as o2 on (o2.organisation_id = s.org_id)
    left join organisation_data as o3 on (o3.organisation_id = s.org_pure_id)
    left join organisation_data as o4 on (o4.organisation_id = s.org_classified_ids_id)
    where o1.organisation_id is null AND o2.organisation_id is null
    AND o3.organisation_id is null AND o4.organisation_id is null;
Verifies that organisation data matches organisation relations This SQL should return 0 rows.

 

ORG_RELATION_ADDRESSES

SQL Description Expected result
select ID, count(ID) from ORG_RELATION_ADDRESSES group by ID having count(ID) > 1;
Verification of duplicate ids This SQL should return 0 rows.
SELECT ID, STAFF_RELATION_ID, STUDENT_RELATION_ID, VISITOR_RELATION_ID, HONORARY_RELATION_ID FROM ORG_RELATION_ADDRESSES
WHERE STAFF_RELATION_ID IS NOT NULL AND STAFF_RELATION_ID NOT IN (SELECT ID FROM STAFF_ORG_RELATION) OR
STUDENT_RELATION_ID IS NOT NULL AND STUDENT_RELATION_ID NOT IN (SELECT ID FROM STUDENT_ORG_RELATION) OR
VISITOR_RELATION_ID IS NOT NULL AND VISITOR_RELATION_ID NOT IN (SELECT ID FROM VISITING_SCHOLAR_ORG_RELATION) OR
HONORARY_RELATION_ID IS NOT NULL AND HONORARY_RELATION_ID NOT IN (SELECT ID FROM HONORARY_STAFF_ORG_RELATION)
Verification of relations to STAFF_ORG_RELATION, STUDENT_ORG_RELATION, VISITING_SCHOLAR_ORG_RELATION and HONORARY_STAFF_ORG_RELATION.  

 

ORG_RELATION_PHONE_NUMBERS

SQL Description Expected result
select ID, count(ID) from ORG_RELATION_PHONE_NUMBERS group by ID having count(ID) > 1;
Verification of dublicate ids This SQL should return 0 rows.
SELECT ID, STAFF_RELATION_ID, STUDENT_RELATION_ID, VISITOR_RELATION_ID, HONORARY_RELATION_ID FROM ORG_RELATION_PHONE_NUMBERS
WHERE STAFF_RELATION_ID IS NOT NULL AND STAFF_RELATION_ID NOT IN (SELECT ID FROM STAFF_ORG_RELATION) OR
STUDENT_RELATION_ID IS NOT NULL AND STUDENT_RELATION_ID NOT IN (SELECT ID FROM STUDENT_ORG_RELATION) OR
VISITOR_RELATION_ID IS NOT NULL AND VISITOR_RELATION_ID NOT IN (SELECT ID FROM VISITING_SCHOLAR_ORG_RELATION) OR
HONORARY_RELATION_ID IS NOT NULL AND HONORARY_RELATION_ID NOT IN (SELECT ID FROM HONORARY_STAFF_ORG_RELATION)
Verification of relations to STAFF_ORG_RELATION, STUDENT_ORG_RELATION, VISITING_SCHOLAR_ORG_RELATION and HONORARY_STAFF_ORG_RELATION. This SQL should return 0 rows.

 

ORG_RELATION_EMAILS

SQL Description Expected result
select ID, count(ID) from ORG_RELATION_EMAILS group by ID having count(ID) > 1;
Verification of duplicate ids This SQL should return 0 rows.
SELECT ID, STAFF_RELATION_ID, STUDENT_RELATION_ID, VISITOR_RELATION_ID, HONORARY_RELATION_ID FROM ORG_RELATION_EMAILS
WHERE STAFF_RELATION_ID IS NOT NULL AND STAFF_RELATION_ID NOT IN (SELECT ID FROM STAFF_ORG_RELATION) OR
STUDENT_RELATION_ID IS NOT NULL AND STUDENT_RELATION_ID NOT IN (SELECT ID FROM STUDENT_ORG_RELATION) OR
VISITOR_RELATION_ID IS NOT NULL AND VISITOR_RELATION_ID NOT IN (SELECT ID FROM VISITING_SCHOLAR_ORG_RELATION) OR
HONORARY_RELATION_ID IS NOT NULL AND HONORARY_RELATION_ID NOT IN (SELECT ID FROM HONORARY_STAFF_ORG_RELATION)
Verification of relations to STAFF_ORG_RELATION, STUDENT_ORG_RELATION, VISITING_SCHOLAR_ORG_RELATION and HONORARY_STAFF_ORG_RELATION.  

 

ORG_RELATION_WEB_ADDRESSES

SQL Description Expected result
select ID, count(ID) from ORG_RELATION_WEB_ADDRESSES group by ID having count(ID) > 1;
Verification of duplicate ids This SQL should return 0 rows.
SELECT ID, STAFF_RELATION_ID, STUDENT_RELATION_ID, VISITOR_RELATION_ID, HONORARY_RELATION_ID FROM ORG_RELATION_WEB_ADDRESSES
WHERE STAFF_RELATION_ID IS NOT NULL AND STAFF_RELATION_ID NOT IN (SELECT ID FROM STAFF_ORG_RELATION) OR
STUDENT_RELATION_ID IS NOT NULL AND STUDENT_RELATION_ID NOT IN (SELECT ID FROM STUDENT_ORG_RELATION) OR
VISITOR_RELATION_ID IS NOT NULL AND VISITOR_RELATION_ID NOT IN (SELECT ID FROM VISITING_SCHOLAR_ORG_RELATION) OR
HONORARY_RELATION_ID IS NOT NULL AND HONORARY_RELATION_ID NOT IN (SELECT ID FROM HONORARY_STAFF_ORG_RELATION)
Verification of relations to STAFF_ORG_RELATION, STUDENT_ORG_RELATION, VISITING_SCHOLAR_ORG_RELATION and HONORARY_STAFF_ORG_RELATION.  

 

ORG_RELATION_KEYWORDS

SQL Description Expected result
SELECT STAFF_RELATION_ID, STUDENT_RELATION_ID, VISITOR_RELATION_ID, HONORARY_RELATION_ID FROM ORG_RELATION_KEYWORDS
WHERE STAFF_RELATION_ID IS NOT NULL AND STAFF_RELATION_ID NOT IN (SELECT ID FROM STAFF_ORG_RELATION) OR
STUDENT_RELATION_ID IS NOT NULL AND STUDENT_RELATION_ID NOT IN (SELECT ID FROM STUDENT_ORG_RELATION) OR
VISITOR_RELATION_ID IS NOT NULL AND VISITOR_RELATION_ID NOT IN (SELECT ID FROM VISITING_SCHOLAR_ORG_RELATION) OR
HONORARY_RELATION_ID IS NOT NULL AND HONORARY_RELATION_ID NOT IN (SELECT ID FROM HONORARY_STAFF_ORG_RELATION)
Verification of relations to STAFF_ORG_RELATION, STUDENT_ORG_RELATION, VISITING_SCHOLAR_ORG_RELATION and HONORARY_STAFF_ORG_RELATION. This SQL should return 0 rows.

 

PERSON_IDS

SQL Description Expected result
SELECT * FROM PERSON_IDS WHERE PERSON_IDS.PERSON_ID NOT IN (SELECT PERSON_ID FROM PERSON_DATA)
Finds all entries in PERSON_IDS that are not related to a person in PERSON_DATA This SQL should return 0 rows.
SELECT ID, COUNT(ID) FROM PERSON_IDS GROUP BY ID HAVING COUNT(ID) > 1
Verify that the IDs are unique This SQL should return 0 rows.

 

PERSON_NAMES

SQL Description Expected result
SELECT * FROM PERSON_NAMES WHERE PERSON_NAMES.PERSON_ID NOT IN (SELECT PERSON_ID FROM PERSON_DATA)
Finds all entries in PERSON_NAMES that are not related to a person in PERSON_DATA. This SQL should return 0 rows.
SELECT ID, COUNT(ID) FROM PERSON_NAMES GROUP BY ID HAVING COUNT(ID) > 1


 

Verify that the IDs are unique This SQL should return 0 rows.

 

PERSON_TITLES

SQL Description Expected result
SELECT * FROM PERSON_NAMES WHERE PERSON_NAMES.PERSON_ID NOT IN (SELECT PERSON_ID FROM PERSON_DATA)
Finds all entries in PERSON_NAMES that are not related to a person in PERSON_DATA. This SQL should return 0 rows.
SELECT ID, COUNT(ID) FROM PERSON_NAMES GROUP BY ID HAVING COUNT(ID) > 1


 

Verify that the IDs are unique This SQL should return 0 rows.

 

PERSON_PROFILE_INFORMATION

SQL Description Expected result
SELECT * FROM PERSON_PROFILE_INFORMATION WHERE PERSON_PROFILE_INFORMATION.PERSON_ID NOT IN (SELECT PERSON_ID FROM PERSON_DATA)
Finds all entries in PERSON_PROFILE_INFORMATION that are not related to a person in PERSON_DATA. This SQL should return 0 rows.
SELECT ID, COUNT(ID) FROM PERSON_PROFILE_INFORMATION GROUP BY ID HAVING COUNT(ID) > 1
Verify that the IDs are unique This SQL should return 0 rows.

 

PERSON_LEAVE_OF_ABSENCE

SQL Description Expected result
SELECT * FROM PERSON_LEAVE_OF_ABSENCE WHERE PERSON_LEAVE_OF_ABSENCE.PERSON_ID NOT IN (SELECT PERSON_ID FROM PERSON_DATA)
Finds all entries in PERSON_LEAVE_OF_ABSENCE that are not related to a person in PERSON_DATA. This SQL should return 0 rows.
SELECT ID, COUNT(ID) FROM PERSON_LEAVE_OF_ABSENCE GROUP BY ID HAVING COUNT(ID) > 1
Verify that the IDs are unique  

 

PERSON_DOCUMENTS

SQL Description Expected result
SELECT * FROM PERSON_DOCUMENTS WHERE PERSON_DOCUMENTS.PERSON_ID NOT IN (SELECT PERSON_ID FROM PERSON_DATA)
Finds all entries in PERSON_DOCUMENTS that are not related to a person in PERSON_DATA. This SQL should return 0 rows.
SELECT ID, COUNT(ID) FROM PERSON_DOCUMENTS GROUP BY ID HAVING COUNT(ID) > 1
Verify that the IDs are unique  

 

PERSON_PHOTOS

SQL Description Expected result
SELECT * FROM PERSON_PHOTOS WHERE PERSON_PHOTOS.PERSON_ID NOT IN (SELECT PERSON_ID FROM PERSON_DATA)
Finds all entries in PERSON_PHOTOS that are not related to a person in PERSON_DATA. This SQL should return 0 rows.
SELECT ID, COUNT(ID) FROM PERSON_PHOTOS GROUP BY ID HAVING COUNT(ID) > 1
Verify that the IDs are unique This SQL should return 0 rows.

 

PERSON_EDUCATIONS

SQL Description Expected result
SELECT * FROM PERSON_EDUCATIONS WHERE PERSON_EDUCATIONS.PERSON_ID NOT IN (SELECT PERSON_ID FROM PERSON_DATA)
Finds all entries in PERSON_EDUCATIONS that are not related to a person in PERSON_DATA. This SQL should return 0 rows.
SELECT ID, COUNT(ID) FROM PERSON_EDUCATIONS GROUP BY ID HAVING COUNT(ID) > 1
Verify that the IDs are unique This SQL should return 0 rows.

 

PERSON_EXTERNAL_POSITIONS

SQL Description Expected result
SELECT * FROM PERSON_EXTERNAL_POSITIONS WHERE PERSON_EXTERNAL_POSITIONS.PERSON_ID NOT IN (SELECT PERSON_ID FROM PERSON_DATA)
Finds all entries in PERSON_EXTERNAL_POSITIONS that are not related to a person in PERSON_DATA. This SQL should return 0 rows.
SELECT ID, COUNT(ID) FROM PERSON_EXTERNAL_POSITIONS GROUP BY ID HAVING COUNT(ID) > 1
Verify that the IDs are unique This SQL should return 0 rows.

 

PERSON_PROF_QUALIFICATIONS

SQL Description Expected result
SELECT * FROM PERSON_PROF_QUALIFICATIONS WHERE PERSON_PROF_QUALIFICATIONS.PERSON_ID NOT IN (SELECT PERSON_ID FROM PERSON_DATA)
Finds all entries in PERSON_PROF_QUALIFICATIONS that are not related to a person in PERSON_DATA. This SQL should return 0 rows.
SELECT ID, COUNT(ID) FROM PERSON_PROF_QUALIFICATIONS GROUP BY ID HAVING COUNT(ID) > 1
Verify that the IDs are unique This SQL should return 0

 

PERSON_LINKS

SQL Description Expected result
SELECT * FROM PERSON_LINKS WHERE PERSON_LINKS.PERSON_ID NOT IN (SELECT PERSON_ID FROM PERSON_DATA)
Finds all entries in PERSON_LINKS that are not related to a person in PERSON_DATA. This SQL should return 0 rows.
SELECT ID, COUNT(ID) FROM PERSON_LINKS GROUP BY ID HAVING COUNT(ID) > 1
Verify that the IDs are unique This SQL should return 0

 

PERSON_KEYWORDS

SQL Description Expected result
SELECT * FROM PERSON_KEYWORDS WHERE PERSON_KEYWORDS.PERSON_ID NOT IN (SELECT PERSON_ID FROM PERSON_DATA)
Finds all entries in PERSON_KEYWORDS that are not related to a person in PERSON_DATA. This SQL should return 0 rows.

 

SUPERVISOR_DATA

SQL Description Expected result
select ID, count(ID) from HONORARY_STAFF_ORG_RELATION group by ID having count(ID) > 1;
Verification of duplicate ids This SQL should return 0 rows.
SELECT SUPERVISOR_DATA.* FROM SUPERVISOR_DATA
LEFT OUTER JOIN STAFF_ORG_RELATION ON SUPERVISOR_DATA.APPRENTICE_ORG_RELATION_ID = STAFF_ORG_RELATION.ID
 LEFT OUTER JOIN STUDENT_ORG_RELATION ON SUPERVISOR_DATA.APPRENTICE_ORG_RELATION_ID = STUDENT_ORG_RELATION.ID
 LEFT OUTER JOIN VISITING_SCHOLAR_ORG_RELATION ON SUPERVISOR_DATA.APPRENTICE_ORG_RELATION_ID = VISITING_SCHOLAR_ORG_RELATION.ID
 LEFT OUTER JOIN HONORARY_STAFF_ORG_RELATION ON SUPERVISOR_DATA.APPRENTICE_ORG_RELATION_ID = HONORARY_STAFF_ORG_RELATION.ID
WHERE
 STAFF_ORG_RELATION.ID IS NULL
 AND STUDENT_ORG_RELATION.ID IS NULL
 AND VISITING_SCHOLAR_ORG_RELATION.ID IS NULL
 AND HONORARY_STAFF_ORG_RELATION.ID IS NULL;
Verification of apprentice relations in supervisor_data view. Must return 0 rows This SQL should return 0 rows.

Published at May 27, 2024

Download
Table of Contents
  1. USER_DATA
  2. PERSON_DATA
  3. ORG_RELATION
  4. STAFF_ORG_RELATION
  5. STUDENT_ORG_RELATION
  6. VISITING_SCHOLAR_ORG_RELATION
  7. HONORARY_STAFF_ORG_RELATION
  8. ORG_RELATION_ADDRESSES
  9. ORG_RELATION_PHONE_NUMBERS
  10. ORG_RELATION_EMAILS
  11. ORG_RELATION_WEB_ADDRESSES
  12. ORG_RELATION_KEYWORDS
  13. PERSON_IDS
  14. PERSON_NAMES
  15. PERSON_TITLES
  16. PERSON_PROFILE_INFORMATION
  17. PERSON_LEAVE_OF_ABSENCE
  18. PERSON_DOCUMENTS
  19. PERSON_PHOTOS
  20. PERSON_EDUCATIONS
  21. PERSON_EXTERNAL_POSITIONS
  22. PERSON_PROF_QUALIFICATIONS
  23. PERSON_LINKS
  24. PERSON_KEYWORDS
  25. SUPERVISOR_DATA
Related Articles
  • Configurable Person Synchronisation
  • Configurable Person Synchronisation
Keywords
  • views verification
  • sql validation

Was this article helpful?

Yes
No
Give feedback about this article

    About Pure

  • Announcements

    Additional Support

  • Events
  • Client Community
  • Training

    Need Help?

  • Contact Us
  • Submit a Support Case
  • My Cases
  • Linkedin
  • Twitter
  • Facebook
  • Youtube
Elsevier logo Relx logo

Copyright © 2025 Elsevier, except certain content provided by third parties.

  • Terms & Conditions Terms & Conditions
  • Privacy policyPrivacy policy
  • AccesibilityAccesibility
  • Cookie SettingsCookie Settings
  • Log in to Pure Help CenterLog in to Helpjuice Center

Knowledge Base Software powered by Helpjuice

Expand