Законно ли это во всех версиях SQLite в Android (скажем, от Android 1.6 - вверх), чтобы иметь запрос следующим образом:Android-группа SQLite - все столбцы?
select _id, name, min(qty) min_qty, max(qty) max_qty
from my_table
group by name
Обратите внимание: группировка по «имени» только не «_id» , Я заметил, что это действительно работает. Мне просто интересно, работает ли это как по назначению, так и на любой версии Android и устройстве. Мне нужен этот запрос, чтобы отображать минимальные и максимальные количества в моем ListView, но все равно есть _id одной из строк, сгруппированных - для моего ListView, чтобы получить его. Надеюсь, что это понятно.
SQLite не зависит от Android, и запрос действителен для SQLite (а также MySQL), хотя и не для других баз данных. Предложение GROUP BY технически ANSI, хотя это не то, что поддерживает большинство баз данных (Oracle, SQL Server, DB2 и т. Д.). Я считаю, PostgreSQL 9.2 начал поддерживать «отсутствующий столбец» GROUP BY ... –
OK спасибо большое. Во всяком случае, мне бы хотелось увидеть другое подтверждение. – Yar
Чтобы добавить к тому, что сказал OMG, он работает правильно, если 'name' является Unique. Если он не уникален, возвращается один (более или менее случайный) '_id' из многих, связанных с именем' name'. Итак, если (как вы говорите) просто хотите один (любой) '_id' из одной из сгруппированных строк, вы можете его использовать. –