Estoy tratando de obtener datos donde el orden no importa con identificadores únicos. Así que simplemente mi consulta seríaPHP mysql Distinto, solo carga 1 conjunto de identificadores
SELECT DISTINCT id1, id2 FROM messages ORDER BY date
Si tengo una base de datos con los siguientes datos:
id1 | id2 | date
5 | 6 | 1/2/2011
6 | 5 | 1/1/2011
que sólo se necesitaría para cargar la columna con la fecha más reciente, porque los identificadores son las mismas 2 personas . Realmente tengo que cargar las identificaciones donde uno de los IDS es la suya por lo que mi consulta verdadera en este momento es
SELECT DISTINCT userid_1, userid_2
FROM messages
WHERE userid_2=$dbid
OR userid_1=$dbid
ORDER BY date
y me sale un resultado como [6 5] [5 9] [9 5] [5 15] [5 6] [5 17]
Resultados 2 y 3 son los mismos y 1 y 5 lo mismo. Realmente solo se deben consultar 4 resultados. ¡Gracias!
Por alguna razón, si lo hago, carga la cantidad correcta de filas, pero en realidad no obtendrá ningún dato. simplemente muestra [] [] [] [] que se supone que me muestra los ID que se están cargando. if ($ resultado> 0) { \t tiempo ($ fila = mysql_fetch_assoc ($ consulta)) { \t \t echo "[". $ Fila [ 'UserID_1']."". $ Fila [ 'userid_2' ]"]"; \t} } –
nvm, olvidó que necesita poner el [if (userid_1> = userid_2, userid_1, userid_2)] entre corchetes. –
Funciona perfecto, pero si no te importa puedes explicarme cómo funciona eso porque no estoy seguro de entenderlo. –