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

SELECCIONE ¿Datos de varias tablas?

Entonces quiere decir que quiere the same 3 fields de las 3 mesas?

   SELECT r.col1, r.col2, r.col3
     FROM random r
    WHERE r.userid = '1'
    LIMIT 0, 30
UNION ALL 
   SELECT p.pcol1, p.pcol_2, p.p3
     FROM pandom p
    WHERE p.userid = '1'
    LIMIT 0, 30
UNION ALL 
   SELECT l.l1, l.l2, l.l3
     FROM landom l
    WHERE l.userid = '1'
    LIMIT 0, 30

Los campos no tienen que tener el mismo nombre, pero los mismos tipos deben alinearse en las posiciones 1, 2 y 3.

La forma en que funcionan los límites es:

  • intentará obtener 30 de random .
  • Si ya tiene 30, ni siquiera mirará las otras 2 tablas
  • si tiene menos de 30 de random , intentará llenar hasta 30 de pandom y solo finalmente landom