If it is SQL Server, you can use
RANK() to do your job.
Try something like-
SELECT [NAME],IDENTIFIER,TOTAL
FROM
(
SELECT [NAME],IDENTIFIER,TOTAL,RANK() OVER (PARTITION BY IDENTIFIER ORDER BY TOTAL) AS SlNo
FROM YourTable
) AS T
WHERE SlNo=1
EXAMPLE:
SELECT [NAME],IDENTIFIER,TOTAL
FROM
(
SELECT [NAME],IDENTIFIER,TOTAL,RANK() OVER (PARTITION BY IDENTIFIER ORDER BY TOTAL) AS SlNo
FROM
(
SELECT 'ab' [NAME], 110011 IDENTIFIER, 10 TOTAL
UNION ALL
SELECT 'cd', 110011, 20
UNION ALL
SELECT 'ef', 110012, 30
UNION ALL
SELECT 'gh', 110013, 40
UNION ALL
SELECT 'ij', 110014, 50
UNION ALL
SELECT 'kl', 110015, 60
) AS T1
) AS T2
WHERE SlNo=1
Hope, it helps :)