| Ver tema anterior :: Ver tema siguiente |
| Autor |
Mensaje |
Sergio Martinez Invitado
|
Publicado: Dom 16 Sep, 2001 9:49 pm Asunto: Manejo SQL |
|
|
HOla: Resulta que necesito que la instruccion SQL arroge como resultado determinadas cuplas. En access se pone Top n Ejemplo: Select Top 2 * ... y aparecen 2 tuplas. Eso no funciona en el SQL builder con paradox. ¿Cómo se hace????? |
|
| Volver arriba |
|
 |
TOÑO Invitado
|
Publicado: Mie 19 Sep, 2001 1:32 pm Asunto: Manejo SQL |
|
|
Si cuplas, o tuplas se refieren a varios campos de la tabla la sentencia seria algo asi Select NombreCampo1, NombreCampo2 from NombreTabla where ...
|
|
| Volver arriba |
|
 |
Sergio Martinez Invitado
|
Publicado: Jue 20 Sep, 2001 12:14 pm Asunto: Manejo SQL |
|
|
Toño me entendiste mal: lo pongo en otras palabras, en una tabla exiten campos y toda una fila de campos componen un registro listo???necesito es lo siguiente. Como haria en una tabla que tiene 10000000 registros hacer un select *, pero que envez de retornarme los 10000000 registros retorne la cantidad de regisrtos que yo desee??? Ahora si me entendio???? |
|
| Volver arriba |
|
 |
TOÑO Invitado
|
Publicado: Jue 20 Sep, 2001 11:26 pm Asunto: Manejo SQL |
|
|
| Bien ya entiendo. Yo tuve que implementar una select que contase solamente los 500 primero registros, para el tema de unas etiquetas, me volvi loco intentando hacer contadores, procedimientos a contadores, todo lo que se me ocurrio, hasta que di con una clausula de sql que hace exactamente eso, la implemente en el programa y funciono, jure que dicha clausula no se me olvidaria jamas, joder se me ha olvidado, he repasado todo el codigo que tengo por hay y no la encuentro, pero juro que la encontrare, cuando la encuetre la pondre en el foro. Nota 1: Recuerdo que solo me servia para los x primeros, no se podia hacer desde el registro 300 al 600, etc. Nota 2: Me servia para interbase. Nota 3: Supongo que tu tabla no estara ordenada por un codigo secuencial no?
|
|
| Volver arriba |
|
 |
Sergio Martinez Invitado
|
Publicado: Vie 21 Sep, 2001 2:04 pm Asunto: Manejo SQL |
|
|
HOla Toño: Si la tabla la tengo con un autonumerico por clave primaria. espero anciosamente que encontres esa sentencia SQL.Gracias |
|
| Volver arriba |
|
 |
Gorak Invitado
|
Publicado: Dom 23 Sep, 2001 10:25 pm Asunto: Manejo SQL |
|
|
| Igual te sirve esto: SELECT * FROM Tabla1 WHERE CampoAutonumerico BETWEEN 1 AND 5000 (los extremos están incluidos) Beno, agur!!! |
|
| Volver arriba |
|
 |
Droman Ens


Registrado: 04 May 2003Mensajes: 34Ubicación: Madrid - SPAIN -
|
Publicado: Lun 29 Dic, 2003 5:08 pm Asunto: |
|
|
Hola chavales:
A ver si esto os sirve de algo
Select * from nombretabla limit 0,100 // muestra solo los 100 primeros
Select * from nombretabla limit 100,200 // los 100 siguientes.
...
Todo tiene su trampa... y es que yo solo lo he utilizado con MySQL no sé
si Access lo tiene.
Espero que os haya servido. _________________ Entonces el bibliotecario miró a los libros enfurecido y les gritó ¡¡ OOOK !! |
|
| Volver arriba |
|
 |
XyVy Master


Registrado: 25 Ago 2002Mensajes: 557Ubicación: Murcia (España)
|
Publicado: Lun 29 Dic, 2003 6:22 pm Asunto: |
|
|
El LIMIT que yo sepa no forma parte del SQL92 que es el standard que incorporan (nunca completo) la mayoría de SGBD, MySQL fue quien ha introducido esa clausula y es muy util sobre todo para las webs, pues suelen mostrar registros de pocos en pocos, ya sabeis lo tipico, "mostrar los siguientes 25 registros" y cosas de esas.
Si tienes un Autonúmerico como bien decian arriba o algun campo secuencial númerico, no tiene porque ser clave primaria, podría simplemer ser un campo UNIQUE, puedes utilizarlo como bien dijeron arriba con la clausula BETWEEN que si forma parte del SQL92, aunque tampoco todos los SGBD la implementan, hacer notar que BETWEEN no se utiliza para devolver x registros, sino como clausula de selección de registros sobre cierto campo, este pueden ser fechas, cadenas, numeros, etc. Lo malo del autonúmerico es que haya huecos o vacios, entonces BETWEEN probablemente te devuelva menos registros de los que tu quieres y si el campo sobre el que haces BETWEEN contiene valores repetidos en distintas tuplas, pues entonces quizás te devuelva más de los que tu quieres.
En fin no te ayudo mucho a ver si sale Angel, seguro que el te puede echar un cablecito.
Ciao y feliz navidad a todos. _________________ OJO!! Ya tenemos subforo de Bases de Datos!!
Gracias a los admins. |
|
| Volver arriba |
|
 |
TOÑO Master

Registrado: 26 Ago 2002Mensajes: 223Ubicación: Madrid - España -
|
Publicado: Lun 29 Dic, 2003 8:27 pm Asunto: |
|
|
HOLA:
J.... casi ni me reconocia, una consulta del año 2001, UFF cuanto ha llovido.
La palabrilla era rows,
select * from Tabla row (200)
Aunque solo funciona en interbase a partir de la 6.5.
Creo que firebird tiene una sentencia first
select first (200) from tabla
By. |
|
| Volver arriba |
|
 |
XyVy Master


Registrado: 25 Ago 2002Mensajes: 557Ubicación: Murcia (España)
|
Publicado: Lun 29 Dic, 2003 10:41 pm Asunto: |
|
|
TOÑO gracias por tu comentario sobre FIRST no conocía esa clausula y parece que si está disponible, el funcionamiento es sin parentensis, por lo que he estado viendo y comprobando. Con mi versión Firebird 1.0.3 funciona perfectamente lo siguiente:
Por ejemplo: | Código: | SELECT FIRST 10 * FROM tabla; |
A ver si pudieramos ayudar al amigo con Paradox.
Ciao y gracias. _________________ OJO!! Ya tenemos subforo de Bases de Datos!!
Gracias a los admins. |
|
| Volver arriba |
|
 |
ikis Master


Registrado: 28 Dic 2002Mensajes: 703Ubicación: Madrid, España
|
Publicado: Mie 31 Dic, 2003 4:00 am Asunto: |
|
|
solo agregar que Top te sirve únicamente en bases de datos Access y seguramente en SQL Server también.
En general cada SGBD agrega lo "suyo" fuera del standard SQL. |
|
| Volver arriba |
|
 |
XyVy Master


Registrado: 25 Ago 2002Mensajes: 557Ubicación: Murcia (España)
|
Publicado: Mie 31 Dic, 2003 10:49 am Asunto: |
|
|
Si es cierto ikis, pero a veces es una pena que eso se haga así, pues nos hace más dificil el migrar nuestras bases de datos o aprender algun conjunto de clausulas nuevo.
En fín, es lo que hay como en todo!
Ciao. _________________ OJO!! Ya tenemos subforo de Bases de Datos!!
Gracias a los admins. |
|
| Volver arriba |
|
 |
|