Mi propuesta:
crea dos tablas que te maneje el problema de forma sencilla. haz uso de campos datetime y no por separado. Según entiendo, la salida de una entrada puede ser al otro día.
Código mysql:
Ver original+----+----------+---------------------+
| id | articulo | fecha_hora |
+----+----------+---------------------+
| 10 | 1 | 2009-08-27 10:05:00 |
| 11 | 2 | 2009-08-27 10:30:00 |
| 12 | 3 | 2009-08-27 10:45:00 |
| 13 | 1 | 2009-08-27 11:25:00 |
| 14 | 1 | 2009-08-27 11:45:00 |
+----+----------+---------------------+
+----+---------------------+------------+
| id | fecha_hora | id_entrada |
+----+---------------------+------------+
| 1 | 2009-08-27 13:51:20 | 10 |
| 2 | 2009-08-27 14:26:59 | 11 |
| 3 | 2009-08-27 17:57:19 | 13 |
| 4 | 2009-08-27 17:37:40 | 14 |
+----+---------------------+------------+
mysql
> select e.articulo articulo
, e.fecha_hora entradas
,ifnull(s.fecha_hora
,'--:--') salidas
from entradas e
left join salidas s
on e.id
=s.id_entrada
order by e.articulo
;+----------+---------------------+---------------------+
| articulo | entradas | salidas |
+----------+---------------------+---------------------+
| 1 | 2009-08-27 10:05:00 | 2009-08-27 13:51:20 |
| 1 | 2009-08-27 11:25:00 | 2009-08-27 17:57:19 |
| 1 | 2009-08-27 11:45:00 | 2009-08-27 17:37:40 |
| 2 | 2009-08-27 10:30:00 | 2009-08-27 14:26:59 |
| 3 | 2009-08-27 10:45:00 | --:-- |
+----------+---------------------+---------------------+
mysql>
De esta forma, cada entrada se toma como una orden y se evita la confusión si dos entradas de un articulo cual suple la salida siguiente.
Como lo tienes, tienes una tabla carente de sentido. Es mejor que desde el principio tengas en cuenta un buen modelo relacional para evitar este tipo de tareas.