Foros del Web » Programando para Internet » PHP »

Extraer todos los datos de una columna en sql

Estas en el tema de Extraer todos los datos de una columna en sql en el foro de PHP en Foros del Web. Buenos dias, estoy efectuando una consulta a una tabla similar esto: ID | MONTO | NOMBRE 001 74,00 JUAN 001 85,00 JUAN 001 97,00 JUAN ...
  #1 (permalink)  
Antiguo 10/07/2015, 10:26
Avatar de echoTREBOR  
Fecha de Ingreso: marzo-2010
Ubicación: Venezuela inc.
Mensajes: 56
Antigüedad: 14 años, 8 meses
Puntos: 2
Extraer todos los datos de una columna en sql

Buenos dias, estoy efectuando una consulta a una tabla similar esto:



ID | MONTO | NOMBRE
001 74,00 JUAN
001 85,00 JUAN
001 97,00 JUAN
001 64,00 JUAN
001 74,00 JUAN



LO QUE QUIERO OBTENER A TRAVÉS DE PHP, ES QUE ME MUESTRE TODOS LOS MONTOS.


ES DECIR:

CUANDO SELECCIONO EL ID 001 SOLO MUESTRA EL PRIMER MONTO... YO DESEO OBTENER TODOS LOS MONTOS DEL ID 001.



Muchas gracias a las personas generosas que me puedan colaborar, ya que mis conocimiento de sql son limitados a consultas basicas.
  #2 (permalink)  
Antiguo 10/07/2015, 10:32
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años
Puntos: 2658
Respuesta: Extraer todos los datos de una columna en sql

Cita:
CUANDO SELECCIONO EL ID 001 SOLO MUESTRA EL PRIMER MONTO... YO DESEO OBTENER TODOS LOS MONTOS DEL ID 001.
Bueno, si la tabl aes como dices, y estás poniendo correctamente el WHERE en la consulta, debes estar recuperando TODOS los registros. Lo que parece que nno haces es RECORRER el resultado para mostrar cada uno...

Postea el código completo, porque no podemos adivinar en qué parte estás haciendo mal las cosas.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #3 (permalink)  
Antiguo 10/07/2015, 10:32
Avatar de xfxstudios  
Fecha de Ingreso: junio-2015
Ubicación: Valencia - Venezuela
Mensajes: 2.448
Antigüedad: 9 años, 4 meses
Puntos: 263
Respuesta: Extraer todos los datos de una columna en sql

Código PHP:
Ver original
  1. "SELECT * FROM tabla WHERE id = '001'";

asi vas a listar todos los montos que correspondan a esa id, claro la puedes cambiar por la variable que quieras que te traiga la id a listar
utiliza un while para mostrarlos todos
  #4 (permalink)  
Antiguo 10/07/2015, 10:36
Avatar de xfxstudios  
Fecha de Ingreso: junio-2015
Ubicación: Valencia - Venezuela
Mensajes: 2.448
Antigüedad: 9 años, 4 meses
Puntos: 263
Respuesta: Extraer todos los datos de una columna en sql

por ejemplo:
Código PHP:
Ver original
  1. $result = $db->query("SELECT * FROM tabla WHERE id = 'variable'";
  2. $totalRows_result = mysali_num_rows($result);
  3. if($result) {
  4. while($row = mysqli_fetch_array($result))
  5. {
  6. echo $row['monto']."<br>";
  7. }
  8. }
  9. else{
  10. echo "no hay datos";
  11. }
  #5 (permalink)  
Antiguo 10/07/2015, 10:57
 
Fecha de Ingreso: julio-2014
Mensajes: 179
Antigüedad: 10 años, 3 meses
Puntos: 26
Respuesta: Extraer todos los datos de una columna en sql

y nomas así mas sencillo

Código MySQL:
Ver original
  1. SELECT MONTO FROM tabla WHERE id = '$variable'

Tu nada más capturas el valor de $variable que sería el id el código que puso xfxstudios debe funcionar perfectamente mi cambio es que en vez de consultar toda la tabla únicamente busca en MONTO lo cual hace de tu consulta más rápida, según yo ja Saludos amigo
__________________
Si haces las cosas como nadie las ha hecho, cobralas bien, si las vas a hacer como todos las han hecho, cobralas bien!!
MecanizandoWeb.com
  #6 (permalink)  
Antiguo 10/07/2015, 10:59
Avatar de Alexis88
Philosopher
 
Fecha de Ingreso: noviembre-2011
Ubicación: Tacna, Perú
Mensajes: 5.552
Antigüedad: 13 años
Puntos: 977
Respuesta: Extraer todos los datos de una columna en sql

Si solo deseas recuperar los datos de una columna en particular, no tienes por qué usar el * en la consulta pues no es necesario tomas a todas las columnas; basta con el nombre de la columna de la cual deseas obtener sus datos.

Código MySQL:
Ver original
  1. SELECT campo FROM tabla WHERE condición

La ejecución de dicha consulta, en caso de ser exitosa, devolverá un conjunto de resultados, los cuales deberás de recuperar mediante alguna de las funciones que ofrece la extensión MySQL (obsoleta), MySQLi (versión mejorada de la anterior) o PDO, generándose un array que deberás de recorrer con una estructura repetitiva.

Un ejemplo:

Código PHP:
Ver original
  1. //Elaboramos la consulta
  2. $consulta = "SELECT monto_trabajador FROM trabajadores WHERE id_trabajador = $valor";
  3.  
  4. //Ejecutamos la consulta o terminamos el script si se produce un error
  5. $resultados = mysqli_query($conexion, $consulta) or exit(mysqli_error($conexion));
  6.  
  7. //Si la consulta nos devuelve resultados
  8. if (mysqli_num_rows($resultados)){
  9.     //Formamos un array con los mismos y lo recorremos
  10.     while ($filas = mysqli_fetch_array($resultados)){
  11.         //Y los manipulamos como creamos conveniente
  12.         echo $filas['monto_trabajador']; //Imprime cada monto del trabajador buscado
  13.     }
  14.  
  15.     //Libero a la memoria de los resultados
  16.     mysqli_free_result($resultados);
  17. }
  18. //Si la consulta no nos devuelve resultados
  19. else{
  20.     echo 'No se encontraron montos para el trabajador especificado';
  21. }

Si deseas, en lugar de la función mysqli_fetch_array, puedes usar otras funciones de la clase mysqli_result.

Saludos
__________________
«Juro por mi vida y mi amor por ella, que jamás viviré para el provecho de otro hombre, ni le pediré a otro hombre que viva para el mío».

Ayn Rand
  #7 (permalink)  
Antiguo 10/07/2015, 12:56
Avatar de echoTREBOR  
Fecha de Ingreso: marzo-2010
Ubicación: Venezuela inc.
Mensajes: 56
Antigüedad: 14 años, 8 meses
Puntos: 2
Respuesta: Extraer todos los datos de una columna en sql

Estoy realizándolo de esta forma, la base de datos es de SQL SERVER.
PERO ME IMPRIME SOLO EL PRIMER MONTO DE ESE ID Y NO TODOS LOS DE LA COLUMNA.



$query="SELECT monto FROM tabla WHERE id='$id'";


$stmt = sqlsrv_query( $conn, $query);

$row = sqlsrv_fetch_array( $stmt, SQLSRV_FETCH_NUMERIC);

foreach ($row as $v1) {

echo "$v1\n";

}
  #8 (permalink)  
Antiguo 10/07/2015, 13:04
Avatar de xfxstudios  
Fecha de Ingreso: junio-2015
Ubicación: Valencia - Venezuela
Mensajes: 2.448
Antigüedad: 9 años, 4 meses
Puntos: 263
Respuesta: Extraer todos los datos de una columna en sql

Código HTML:
Ver original
  1. <?php
  2. // Envía una consulta a MSSQL
  3. $query = mssql_query('SELECT [username] FROM [php].[dbo].[userlist]');
  4.  
  5. // Verifica si ha devuelto algún registro
  6. if (!mssql_num_rows($query)) {
  7.    echo 'No se encontraron registros';
  8. } else {
  9.    while ($row = mssql_fetch_array($query)) {
  10.        echo $row['username'], PHP_EOL;
  11.    }
  12. }
  13.  
  14. // Libera el recurso
  15. mssql_free_result($query);
  16. ?>
[URL="http://php.net/manual/es/function.mssql-result.php"]Manual PHP[/URL]
  #9 (permalink)  
Antiguo 10/07/2015, 13:34
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años
Puntos: 2658
Respuesta: Extraer todos los datos de una columna en sql

Bueno, mira, para que esto:
Código SQL:
Ver original
  1. SELECT monto FROM tabla WHERE id='$id'
TE devuelva en ese contexto sólo un único registro, entonces esto:
Cita:
ID | MONTO | NOMBRE
001 74,00 JUAN
001 85,00 JUAN
001 97,00 JUAN
001 64,00 JUAN
001 74,00 JUAN
no existe

El tema es simple: Si esa tabla tiene un campo denominado "id", que debería ser un VARCHAR para contener algo como "001", y ese campo no es PK de su tabla, debería devolverte todos esos registros. Si no lo hace, el campo es PK y solo conserva uno.
En todo caso lo que puede suceder es que estés verificando contra el campo equivocado, y ese que tiene el "001" es en realidad una FK de otra tabla.

Muéstranos la estructura real de la tabla y veremos, porque de acuerdo a lo que dices, cualquiera de los códigos que te pasaron debería andar bien (prueba uno de esos).

Es más, probemos esto:
Código PHP:
Ver original
  1. $query="SELECT monto FROM tabla WHERE id='$id'";
  2.  
  3. $stmt = sqlsrv_query( $conn, $query);
  4.  
  5. echo "Total Registros: ".sqlsrv_num_rows($stmt);
  6.  
  7. var_dump($stsm);
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Última edición por gnzsoloyo; 10/07/2015 a las 13:41

Etiquetas: columna, sql, tabla
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 08:42.