Blog

Find Distinct Field Counts

Here is a background script you can use to find distinct field counts.

Background script

getDistinct('cmdb_ci_server','os'); //Substitute the table and field values here
function getDistinct(table,field) {
var gaServer = new GlideAggregate(table); 
gaServer.addAggregate('count');
gaServer.orderByAggregate('count'); 
gaServer.groupBy(field);
gaServer.query();
gs.print('Table: '+ table);
while(gaServer.next()){
var myCount = gaServer.getAggregate('count');
gs.print('Distinct field ('+ field + '): ' + gaServer.os + ': ' + myCount);
}
}

Results

*** Script: Table: cmdb_ci_server
*** Script: Distinct field (os): : 11
*** Script: Distinct field (os): Linux Red Hat: 9
*** Script: Distinct field (os): Windows 2003 Standard: 8
*** Script: Distinct field (os): Windows XP: 7
*** Script: Distinct field (os): AIX: 5
*** Script: Distinct field (os): Solaris: 5
*** Script: Distinct field (os): Windows 2000 Server: 2
*** Script: Distinct field (os): HP/UX: 1
*** Script: Distinct field (os): OS/400: 1
*** Script: Distinct field (os): Windows 2000: 1