sql >> Base de Datos >  >> RDS >> Mysql

¿Cómo funciona una autounión de MYSQL?

La forma en que trataría de entender esto es escribir dos listas en la pieza etiquetada como evento1 y evento2. Luego enumere algunos registros en cada lista (las listas serán idénticas) ahora comience en DONDE en la descripción a continuación.

Estamos tomando datos de dos tablas (está bien, la misma tabla se usa dos veces, pero trate de ignorar eso por el momento)

FROM mm_eventlist_dates event1
JOIN mm_eventlist_dates event2 

Probablemente ayude leer el resto de abajo hacia arriba.

  WHERE event1.id=$id

Entonces queremos el registro del evento1 que tiene la identificación de registro especificada. Es de suponer que es exactamente un registro. Ahora calculamos el día después de que terminó ese evento.

 date_add(event1.enddate, INTERVAL 1 DAY)

Ahora eso nos dice que los registros del evento 2 deben comenzar en esa fecha,

ON event2.startdate = date_add(event1.enddate, INTERVAL 1 DAY)

Ahora tenemos dos registros identificados, ¿qué campos queremos?

SELECT event2.id, event2.startdate, event2.price

Ah, solo los campos de aquel cuya fecha de inicio averiguamos.