Ce face HOUR(), MINUTE(), SECOND()
Aceste patru funcții extrag câte o parte din partea de timp a unei valori. HOUR() poate depăși 23 pentru valori TIME care reprezintă durate (ex. '50:00:00').
Parametri
| Parametru | Descriere |
|---|---|
ora |
O valoare de tip oră sau dată-oră. |
Ce returnează
Un număr întreg.
Exemple
Exemplele de pe această pagină pornesc de la datele de mai jos. Rulează mai întâi acest cod, apoi exemplul.
CREATE TABLE comenzi (
id INT PRIMARY KEY,
client VARCHAR(30),
plasata DATETIME,
livrata DATETIME
);
INSERT INTO comenzi VALUES
(101, 'Ana', '2026-09-28 09:15:00', '2026-10-01 14:20:00'),
(102, 'Bogdan', '2026-10-05 18:40:00', '2026-10-06 10:05:00'),
(103, 'Cristina', '2026-10-17 22:10:00', NULL),
(104, 'Dan', '2026-12-30 11:00:00', '2027-01-04 16:30:00');
Exemplul 1: Toate părțile unei ore
SELECT HOUR('2026-10-19 14:30:05.123456') AS ora,
MINUTE('2026-10-19 14:30:05.123456') AS minut,
SECOND('2026-10-19 14:30:05.123456') AS secunda,
MICROSECOND('2026-10-19 14:30:05.123456') AS microsecunde;
Rezultat
+------+-------+---------+--------------+
| ora | minut | secunda | microsecunde |
+------+-------+---------+--------------+
| 14 | 30 | 5 | 123456 |
+------+-------+---------+--------------+
Exemplul 2: Comenzi pe ore ale zilei
SELECT HOUR(plasata) AS ora, COUNT(*) AS comenzi
FROM comenzi
GROUP BY ora
ORDER BY ora;
Rezultat
+------+---------+
| ora | comenzi |
+------+---------+
| 9 | 1 |
| 11 | 1 |
| 18 | 1 |
| 22 | 1 |
+------+---------+
Greșeli frecvente
- Aplici
HOUR()pe o durată de peste 24 de ore și te aștepți la maximum 23. Pentru durate, rezultatul poate fi mai mare.