Foros del Web » Programando para Internet » PHP »

Este codigo puede ser mas eficiente

Estas en el tema de Este codigo puede ser mas eficiente en el foro de PHP en Foros del Web. Chicos, existe una forma mas eficiente de capturar el valor del consecutivo en una variable y actualizar el valor del consecutivo en la tabla @import ...
  #1 (permalink)  
Antiguo 17/05/2013, 19:10
 
Fecha de Ingreso: noviembre-2010
Mensajes: 204
Antigüedad: 13 años, 5 meses
Puntos: 1
Este codigo puede ser mas eficiente

Chicos, existe una forma mas eficiente de capturar el valor del consecutivo en una variable y actualizar el valor del consecutivo en la tabla

Código HTML:
Ver original
  1. conexion.php
  2.  
  3. $consulta = mysql_query("SELECT consecutivo FROM general");
  4. $row = mysql_fetch_array($consulta);
  5. $consecutivo = $row['consecutivo'];
  6.  
  7. $actualizar = "UPDATE general SET consecutivo = consecutivo + 1";
  8. mysql_query($actualizar, $conex);

Gracias
  #2 (permalink)  
Antiguo 17/05/2013, 19:48
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Este codigo puede ser mas eficiente

Como sea deben ser dos consultas, no creo que exista una consulta para ambas cosas.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 17/05/2013, 20:10
Avatar de ggomez91  
Fecha de Ingreso: octubre-2008
Mensajes: 181
Antigüedad: 15 años, 6 meses
Puntos: 13
Respuesta: Este codigo puede ser mas eficiente

sí se puede con querys anindados pero no recuerdo bien la sintxis, creo que puede ser asi:

update general SET consecutivo = (select consecutivo from general) + 1;
  #4 (permalink)  
Antiguo 17/05/2013, 20:21
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Este codigo puede ser mas eficiente

Cita:
Iniciado por ggomez91 Ver Mensaje
sí se puede con querys anindados pero no recuerdo bien la sintxis, creo que puede ser asi:

update general SET consecutivo = (select consecutivo from general) + 1;
De hecho para una operación de ese tipo no hace falta el SELECT anidado, como hace en el segundo ejemplo funciona excelente.

El problema es que de esa forma no se puede extraer el valor consecutivo como si hubiera sido solo un SELECT.

Como sea es un problema de base de datos, no veo porque preguntar eso en el foro de PHP.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.

Etiquetas: eficiente, mysql, select, 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 17:23.