Как выполнить это в запросе Android Studio? - PullRequest
0 голосов
/ 10 ноября 2019

Как я могу выполнить запрос, чтобы получить этот результат?

Я хочу select * from TABLE_NAME все данные, которые имеют различные TAKEN_DATE_TIME на каждом MED_ID

return db.query(true, TABLE_NAME, new String[] { MED_ID,HIS_ID,TAKEN_DATE_TIME,SCHEDULED_DATE_TIME,TAKEN,MED_NAME },
TAKEN_DATE_TIME, null, MED_ID, null, HIS_ID+" DESC" , null);

Этоданные в базе данных. This was the data in database

1 Ответ

0 голосов
/ 10 ноября 2019

В соответствии с я хочу выбрать * из TABLE_NAME всех данных, которые имеют разные TAKEN_DATE_TIME для каждого MED_ID

Вы, похоже, хотите выполнить запрос: -

SELECT * FROM hislist GROUP BY taken_datetime,med_id ORDER BY med_id;

Используя SQLiteDatabase query метод, который вы можете использовать: -

return db.query(
    TABLE_NAME, /* FROM clause less FROM */
    null, /* all columns */
    null, /* selection i.e. WHERE clause less WHERE */
    null, /* bind  parameters */
    TAKEN_DATE_TIME + "," + MED_ID, /* GROUP BY clause less GROUP BY */
    null, /* HAVING clause less HAVING */
    null /* ORDER BY clause less ORDER BY */
);
  • Это создает группы строкMED_ID и затем TAKEN_DATE_TIME, таким образом, будет создана отдельная группа для каждого отдельного TAKEN_DATE_TIME в каждом MED_ID.

, например, на основе подмножества ваших данных (которое случайно имеет тот же TAKEN_DATE_TIME в MED_ID) вышеприводит к: -

enter image description here

Однако при изменении некоторых значений TAKEN_DATE_TIME для MED_ID 1 на: -

enter image description here

В результате будет 3 группы разных TAKEN_DATE_TIME для MED_ID 1 согласно: -

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...