Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General »

¿como seleccionar un registro en mas de una tabla?

Estas en el tema de ¿como seleccionar un registro en mas de una tabla? en el foro de Bases de Datos General en Foros del Web. Hola bueno el objetivo es contar la cantidad de registros insertados en varias tablas que tienen un campo en comun, una especie de... SELECT todos_los_campos ...
  #1 (permalink)  
Antiguo 30/06/2010, 07:15
 
Fecha de Ingreso: diciembre-2008
Mensajes: 91
Antigüedad: 15 años, 4 meses
Puntos: 1
¿como seleccionar un registro en mas de una tabla?

Hola
bueno el objetivo es contar la cantidad de registros insertados en varias tablas que tienen un campo en comun, una especie de...

SELECT todos_los_campos FROM todas_todas_las_tablas WHERE x_campo=100

en codigo, que no funciona lo tengo asi:

1. <?php
2.
3. // primero conectamos siempre a la base de datos mysql
4. $sql = 'SELECT * FROM * where userid=100'; // sentencia sql
5. $result = mysql_query($sql);
6. $numero = mysql_num_rows($result); // obtenemos el número de filas
7. echo 'El número de registros de la tabla es: '.$numero.''; // imprimos en pantalla el número generado
?>


Seria de gran ayuda vuestra colaboración
un saludo!!
  #2 (permalink)  
Antiguo 30/06/2010, 10:58
 
Fecha de Ingreso: enero-2007
Ubicación: Cali - Valle
Mensajes: 135
Antigüedad: 17 años, 3 meses
Puntos: 4
Respuesta: ¿como seleccionar un registro en mas de una tabla?

Saludos mesenier


Creo q tu problema es el * que tienes despues del From, en su lugar deberias de colocar las tablas a las cuales vas a acceder con ese campo.

Es decir tu codigo deberia de ser

Código SQL:
Ver original
  1. SELECT *
  2. FROM tabla_1, tabla_2,...tabla_n
  3. WHERE
  4. AND tabla_1.userid = tabla_2.userid ...
  5. AND tabla_1.userid = tabla_n.userid
  6. AND tabla_1.userid = 100

ademas debes de colocar los joins para unir esas tablas y que te traiga la informacion correspondiente.

Scooby

Última edición por scooby151; 30/06/2010 a las 12:15
  #3 (permalink)  
Antiguo 30/06/2010, 15:14
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Cáceres
Mensajes: 3.735
Antigüedad: 16 años
Puntos: 300
Respuesta: ¿como seleccionar un registro en mas de una tabla?

Para eso tienes varias opciones, la mayor parte de las cuales pasan por programación.
Dices en todas las tablas, pero no nos dices cuántas tablas son y cómo se llaman. Ciertamente puedes hacerlo con PHP, y también con el schema de MySQL puedes traerte los nombres de todas las tablas. Luego mediante iteración puedes hacer la consulta para cada tabla y sumar en un acumulador los totales que obtengas en cada consulta.
SELECT table_name
-> FROM information_schema.tables
-> WHERE table_schema = 'nombredetubase'
-> ORDER BY table_name DESC;
Con esto obtienes todos los nombres. Luego, mediante programación, puedes introducir el nombre de cada tabla en la consulta que hiciste (parece que el nombre del campo es siempre el mismo,id), donde tienes el segundo asterisco (algo que no permite MySQL), sacas los resultados de cada consulta y haciendo uso de una variable para sumarlos obtienes los totales.
ESta es la idea. Seguramente recibirás más ayuda en el foro de programación.
  #4 (permalink)  
Antiguo 30/06/2010, 17:31
 
Fecha de Ingreso: diciembre-2008
Mensajes: 91
Antigüedad: 15 años, 4 meses
Puntos: 1
Respuesta: ¿como seleccionar un registro en mas de una tabla?

[B]

Código SQL:
Ver original
  1. SELECT *
  2. FROM tabla_1, tabla_2,...tabla_n
  3. WHERE
  4. AND tabla_1.userid = tabla_2.userid ...
  5. AND tabla_1.userid = tabla_n.userid
  6. AND tabla_1.userid = 100

El problema, amigos, es que se desconoce el nombre y la cantidad de las tablas
Y como podria hacer:
En vez de usar un FROM tabla_1, tabla_2
necesitaria usar
FROM todas_las_tablas_que_empiezen_por_medionombredetab la123
  #5 (permalink)  
Antiguo 30/06/2010, 19:52
Avatar de carlos_belisario
Colaborador
 
Fecha de Ingreso: abril-2010
Ubicación: Venezuela Maracay Aragua
Mensajes: 3.156
Antigüedad: 14 años
Puntos: 461
Respuesta: ¿como seleccionar un registro en mas de una tabla?

en php hay una funcion que te da la lista de las tablas de una determinada base de datos mysql_list_tables con esa ahi compara los nombres que tu desees en tu codigo php y luego has la consulta
  #6 (permalink)  
Antiguo 03/07/2010, 23:36
Avatar de Alects  
Fecha de Ingreso: julio-2010
Mensajes: 3
Antigüedad: 13 años, 9 meses
Puntos: 0
Respuesta: ¿como seleccionar un registro en mas de una tabla?

Añade cada una de las tqablas despues del from
suerte ;)

_________________________
http://www.somnus.com.mx/

Etiquetas: froms, php, select, selects, sql, tablas, todas
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 19:05.