• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

jak ugryźć zapytanie sql

0 głosów
342 wizyt
pytanie zadane 18 czerwca 2019 w SQL, bazy danych przez Maikel11 Początkujący (470 p.)
Męczę się z tym zapytaniem już jakiś czas. Nie mogę poradzić sobie z wyświetleniem ostatniego wpisu dla każdego użytkownika. Jak ułożyć selecta aby otrzymać te rekordy? Wynikiem zapytania ma być rekord o id 9 i 13

Dana jest tabela user_log. Napisz jedno zapytanie SQL, które zaznaczy notify_admin na 1 ostatni wpis dla każdego użytkownika z action_type = abuse.

 

+----+---------+-------------+--------------+---------------------+
| id | user_id | action_type | notify_admin | saved               |
+----+---------+-------------+--------------+---------------------+
|  1 |       1 | login       |            0 | 2015-11-02 12:13:14 |
|  2 |       1 | logout      |            0 | 2015-11-02 13:12:11 |
|  3 |       1 | abuse       |            0 | 2016-01-03 14:10:02 |
|  4 |       2 | abuse       |            0 | 2016-01-04 17:47:03 |
|  5 |       2 | login       |            0 | 2016-01-04 18:11:55 |
|  6 |       1 | abuse       |            0 | 2016-01-04 18:23:57 |
|  7 |       1 | abuse       |            0 | 2016-01-04 18:24:23 |
|  8 |       2 | logout      |            0 | 2016-01-04 18:25:24 |
|  9 |       1 | abuse       |            0 | 2016-01-04 18:25:32 |
| 10 |       1 | login       |            0 | 2016-01-05 21:02:59 |
| 11 |       3 | login       |            0 | 2016-01-05 21:28:43 |
| 12 |       3 | logout      |            0 | 2016-01-05 21:52:01 |
| 13 |       2 | abuse       |            0 | 2016-01-05 22:00:35 |
| 14 |       1 | logout      |            0 | 2016-01-05 22:12:09 |
+----+---------+-------------+--------------+---------------------+

 

CREATE TABLE IF NOT EXISTS `user_log` (
  `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
  `user_id` int(10) unsigned NOT NULL,
  `action_type` enum('login','logout','abuse') CHARACTER SET latin1 NOT NULL,
  `notify_admin` tinyint(1) NOT NULL DEFAULT '0',
  `saved` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB  DEFAULT CHARSET=utf8 AUTO_INCREMENT=15;
INSERT INTO `user_log` (`id`, `user_id`, `action_type`, `notify_admin`, `saved`) VALUES
(1, 1, 'login', 0, '2015-11-02 12:13:14'),
(2, 1, 'logout', 0, '2015-11-02 13:12:11'),
(3, 1, 'abuse', 0, '2016-01-03 14:10:02'),
(4, 2, 'abuse', 0, '2016-01-04 17:47:03'),
(5, 2, 'login', 0, '2016-01-04 18:11:55'),
(6, 1, 'abuse', 0, '2016-01-04 18:23:57'),
(7, 1, 'abuse', 0, '2016-01-04 18:24:23'),
(8, 2, 'logout', 0, '2016-01-04 18:25:24'),
(9, 1, 'abuse', 0, '2016-01-04 18:25:32'),
(10, 1, 'login', 0, '2016-01-05 21:02:59'),
(11, 3, 'login', 0, '2016-01-05 21:28:43'),
(12, 3, 'logout', 0, '2016-01-05 21:52:01'),
(13, 2, 'abuse', 0, '2016-01-05 22:00:35'),
(14, 1, 'logout', 0, '2016-01-05 22:12:09');

1 odpowiedź

0 głosów
odpowiedź 18 czerwca 2019 przez mati2762 Mądrala (5,510 p.)
SELECT * FROM user_log WHERE id=9 OR id=13

 

komentarz 19 czerwca 2019 przez Maikel11 Początkujący (470 p.)
to była tylko podpowiedź :) zapytanie musi być uniwersalne

Podobne pytania

+1 głos
1 odpowiedź 357 wizyt
0 głosów
1 odpowiedź 241 wizyt
pytanie zadane 24 marca 2017 w SQL, bazy danych przez Marchiew Dyskutant (7,730 p.)
0 głosów
1 odpowiedź 290 wizyt
pytanie zadane 22 lutego 2017 w SQL, bazy danych przez kacperl95 Obywatel (1,980 p.)

93,425 zapytań

142,421 odpowiedzi

322,646 komentarzy

62,785 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

VMware Cloud PRO - przenieś swoją infrastrukturę IT do chmury
...