FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
||||
|
||||
eliminar solo un registro
hola necesito eliminar solo un registro en un delete.
ej. juan 500 luis 900 juan 500 juan 500 digamos un solo juan 500 y quedaria juan 500 luis 900 juan 500 necesito q haga esto el sql. gracias
__________________
Enseñar es la virtud de un sabio. |
#3
|
|||
|
|||
porque eliminar 1 de 3 registros iguales, hay alguna valor diferente para cada uno?
|
#4
|
||||
|
||||
Casi todas las bases de datos tienen una columna "GENERADA" que puedes utilizar para numerar las filas obtenidas, o bien, funciones "WINDOW" que hacen esta función:
Esto funcionaria en PostgreSQL (versión 8.4 y superior):
Sustituyendo ROW_NUMBER por ROWNUM, funcionaría también en ORACLE (desde la versión 8, si no recuerdo mal). (*) Cuidado, no está testeado. Saludos. |
#5
|
||||
|
||||
utilizo firebird 2.0, como seria en ese caso,
osea; el busca todos los repetidos entonces el 1 de ellos es el q elimina.
__________________
Enseñar es la virtud de un sabio. |
#6
|
||||
|
||||
Talvez con DISTINC ...
Algún redactor técnico que pueda explicar en español la anterior SQL? PD.: La anterior consulta no se puede, lo acabo de recordar Si usaras FB 2.1 podrías hacerlo con tablas anidadas. |
#7
|
||||
|
||||
Se me ocurre algo....
Cita:
Si no se puede la consulta, entonces la solución sería concanetar los campos....
se podra? |
#8
|
||||
|
||||
Sin criticar y menospreciar lo que intentas hacer , en lo personal creo que es un error de diseño de tu base de dato, pues creo que siempre deberia haber un campo diferente y unico en cada tupla (fila ó registro) de los registros de tu tabla, pues para eso estan los primary Key, o en tal efecto podrias añadir un campo por el cual se pueda diferenciar entre una u otra tupla.
Es como si en el club Delphi hubiera dos o mas Usuarios de Nick "ingabraham" y yo le dijera por ejemplo a Roman: "Oye Roman quiero que me elimines al usuario de nick ingabraham.." pero entonces él me va responder: "¿Pero cual de todos?" Entonces quedamos en duda o si este o aquel por que no existe ninguna diferencia entre todos. ¿Que hacemos ahora?..pues esto significa que no se tomo en cuenta esa situacion al momento de diseñar la Base de dato. Es por eso que en club no vas a encontrar dos miembros con el mismo Nick, siempre debe haber algo que haga la diferencia. Ahora quisas podrias solucionar (Como te dije anteriormente) agregando un campo a tu tabla, que podria ser por ejemplo una fecha que indique la hora de insercion del registro, puede ser tambien un campo numerico secuencial que indique la secuencia o lugar que le toco a ese registro, o simplemente agregar campo primary key. De esa forma le podras indicar al servidor que registro especificamente debes eliminar, haciendo mas practica y mas veloz tu consulta SQL. Espero no haberte liado mas... Saludos...
__________________
"Pedid, y se os dará; buscad, y hallaréis; llamad, y se os abrirá." Mt.7:7
Última edición por rgstuamigo fecha: 09-01-2010 a las 14:21:37. |
#9
|
||||
|
||||
si, ya lo habia hecho, me toco agregar un campo de mas.
pero existen tablas donde hay estas duplicidades como n:n hay q sacar una tercera para evitar redundancias
__________________
Enseñar es la virtud de un sabio. |
#10
|
||||
|
||||
Cita:
Saludos...
__________________
"Pedid, y se os dará; buscad, y hallaréis; llamad, y se os abrirá." Mt.7:7
Última edición por rgstuamigo fecha: 08-01-2010 a las 13:47:44. |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Eliminar registro DBCtrlGrid | jjaa | Varios | 1 | 24-11-2008 17:40:39 |
Eliminar registro | Zakio14 | Firebird e Interbase | 5 | 20-03-2008 07:07:07 |
Eliminar registro de BD desde PHP | fide | PHP | 5 | 31-01-2008 14:01:44 |
Eliminar registro de un .mdb con ADO | ¥0n1 | Conexión con bases de datos | 2 | 07-11-2007 11:29:12 |
mostrar SOLO cliente de los que tengo un sólo registro | Giniromero | SQL | 15 | 11-06-2004 12:33:19 |
|