У меня есть куча дампов из приложения и выяснено, что в нем огромное количество ArrayLists с одним объектом. Я знаю, как получить список таких ArrayLists, а также показать класс содержащегося элемента:Получите количество объектов, на которые ссылается ArrayList с размером 1, сгруппированным по классу
SELECT list.elementData[0] FROM java.util.ArrayList list WHERE (list.size = 1)
Результат выглядит следующим образом:
java.lang.String [id=0x7f8e44970]
java.lang.String [id=0x7f8e44980]
java.lang.String [id=0x7f8e44572]
java.io.File [id=0x7f8e43572]
...
То, что я хотел бы, чтобы получить что-то вроде этого :
Class | count
=================================
java.lang.String | 100
java.io.File | 74
...
, но я не могу агрегировать результаты или делать что-либо еще на них. Я нашел here, как передать значения во внешний выбор, но я не могу понять, как использовать что-либо еще рядом с *
в первом выборе.
SELECT * from OBJECTS
(SELECT OBJECTS list.elementData[0] FROM java.util.ArrayList list WHERE (list.size = 1))
Спасибо! Это работает. – NeplatnyUdaj