I ran across an issue where a client had usernames that were all supposed to be lower but somehow wound up as a mixed case username.
The SQL we would use would work out something like this…
Select
Number,
Username,
LOWER(Username)
WHERE
Username != LOWER(Username)
To illustrate this here is the export specification that would return the above mentioned in TCC, name of file CandidateExportTestLower_sq.xml
Contents:
<?xml version="1.0" encoding="UTF-8"?> <quer:query productCode="RC1501" model="http://www.taleo.com/ws/tee800/2009/01" projectedClass="Candidate" locale="en" mode="CSV" csvheader="true" largegraph="true" preventDuplicates="false" xmlns:quer="http://www.taleo.com/ws/integration/query"> <quer:subQueries/> <quer:projections> <quer:projection> <quer:field path="Number"/> </quer:projection> <quer:projection> <quer:field path="Credentials,Username"/> </quer:projection> <quer:projection alias="UsernameLower"> <quer:customFunction name="LOWER"> <quer:field path="Credentials,Username"/> </quer:customFunction> </quer:projection> </quer:projections> <quer:projectionFilterings/> <quer:filterings> <quer:filtering> <quer:notEqual> <quer:field path="Credentials,Username"/> <quer:customFunction name="LOWER"> <quer:field path="Credentials,Username"/> </quer:customFunction> </quer:notEqual> </quer:filtering> </quer:filterings> <quer:sortings/> <quer:sortingFilterings/> <quer:groupings/> <quer:joinings/> </quer:query>