[pyar] ot: duda sobre sqlite

miguel Barraza correo en miguelbarraza.com.ar
Dom Mayo 24 10:41:34 ART 2015


muchas gracias!. aveces cuando tenemos un lio en la cabeza es difícil ordenar las ideas para explicar.
voy a probarlo, esto es lo que estaba buscando:
"update set orden = orden + 1 where order > 155"

en este caso correría a todos los de orden mayor que 155 , le agregaría un +1.
ya con esto me solucionaste la vida.

gracias y buen domingo.

atte, Miguel

Subject: Re: [pyar] ot: duda sobre sqlite


  Hola gente!


  Miguel, ah! tarde un rato en darme cuenta que "ordenar" es un orden arbitrario, no es ordenar los strings por contenido!


  Si es solo para mostrar los strings en el orden que quieren, por ejemplo, una lista de tareas a realizar, ordenada por un criterio cualquiera, el eliminar una tarea no afectaria al orden de los demas. No hace falta ajustar ningun numero


  Si se quiere agregar un string, antes del que tiene, digamos, orden 140, se ajusta con un update set orden = orden + 1 where order >= 140 (o algo asi) y luego se inserta el nuevo string con orden = 140


  Si se quiere agregar un string DESPUES del digaqmos, orden 155, se ajusta con un update set orden = orden + 1 where order > 155, y luego se inserta el nuevo string con orden 156


  Algo asi vi usado en un sistema que mostraba la lista de tareas del sprint de un backlog.


  SOLO si depende el futuro de la humanidad, optimizaria a:


  Si hay que insertar algo luego del 140, y el proximo al 140 es el 160, no ajusto nada e inserto el nuevo string en 150


  Si hay que insertar algo antes del 140, y el anterior al 140 es el 120, no ajusto nada e inserto el nuevo string como 130


  Jaja... ya saben, haria  todo esto con TDD :-)


  Otras opciones?


  Nos leemos!


  Angel "Java" Lopez
  @ajlopez


  2015-05-24 10:18 GMT-03:00 miguel Barraza <correo en miguelbarraza.com.ar>:

    Buenas grupo, aunque esta pregunta no está relacionada precisamente a python pero la hago aquí por si alguno me orienta o sabe como hacer lo siguiente.

      tengo una base de datos sqlite que recibirá una sucesión de strings con la cual tengo que terminar haciendo un reporte:
      exportar un texto con todos los strings ordenados.

      y la info es:
      1. no tengo la cantidad de strings finales, pueden ser 20 o pueden ser muchos.
      2. estos strings pueden variar durante el proceso.
      y 3. incluso muchos de ellos terminar siendo borrados o remplazados.

      mi problema recide en que no se como ordenarlos, creé una tabla de la siguiente forma:
      id autoincremental,
      orden numeric,
      data text.

      y según el orden que se acomode los strings le voy asignando un número en el campo "orden".
      pero mi problema es: ¿cómo acomodar ese campo "orden" sin saturar mucho el proceso?

      imaginando que tenemos 300 strings.
      si borro el número 200: debería acomodarse del 200 para arriba decrementando un valor.

      y si luego agrego uno después del 155: debería correrse todo un valor arriba pasar el 156 al 157 y así. para dejar lugar al nuevo string 156.

      para que quede una idea mejor explicado imaginemos que es como un texto, cuando agregamos una nueva linea todo se corre hacia abajo, y cuando la quitamos todo se corre hacia arriba.

      hay alguna sentencia sqlite que me permita autoincrementar en 1 todos los valores mayores a x, o viseversa??
      ya que tirar muchas consultas para ir incrementando de una en una no me parece muy productivo, sobrecargaría el proceso y tardaría en responder mi script y mas si el número de strings termina siendo muy grande.

      y porque lo ahgo en sqlite?: porque me piden que utilise ese motor.

      alguno sabe una mejor forma, se le ocurre alguna, o sabe como incrementar los campos?.

      gracias, buen domingo!

      atte, Miguel

    _______________________________________________
    pyar mailing list pyar en python.org.ar
    http://listas.python.org.ar/listinfo/pyar

    PyAr - Python Argentina - Sitio web: http://www.python.org.ar/

    La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de Argentina - http://www.usla.org.ar





------------------------------------------------------------------------------


  _______________________________________________
  pyar mailing list pyar en python.org.ar
  http://listas.python.org.ar/listinfo/pyar

  PyAr - Python Argentina - Sitio web: http://www.python.org.ar/

  La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de Argentina - http://www.usla.org.ar
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.python.org.ar/pipermail/pyar/attachments/20150524/ee4731f8/attachment-0001.html>


More information about the pyar mailing list