Club Builder - Foros de discusión Club Builder
Foro de C++Builder en español
 
 FAQFAQ   BuscarBuscar   MiembrosMiembros   Grupos de UsuariosGrupos de Usuarios   RegistrarseRegistrarse 
 PerfilPerfil   Entra para ver tus mensajes privadosEntra para ver tus mensajes privados   EntrarEntrar 

Manejo SQL

 
Publicar nuevo tema   Responder al tema    Foros de discusión -> Consultas
Ver tema anterior :: Ver tema siguiente  
Autor Mensaje
Mensaje    Asunto: Manejo SQL Responder citando

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
Mensaje    Asunto: Manejo SQL Responder citando

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
Mensaje    Asunto: Manejo SQL Responder citando

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
Mensaje    Asunto: Manejo SQL Responder citando

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
Mensaje    Asunto: Manejo SQL Responder citando

HOla Toño:
Si la tabla la tengo con un autonumerico por clave primaria.
espero anciosamente que encontres esa sentencia SQL.

Gracias

Volver arriba
Mensaje    Asunto: Manejo SQL Responder citando

Igual te sirve esto:

SELECT * FROM Tabla1
WHERE CampoAutonumerico BETWEEN 1 AND 5000
(los extremos están incluidos)

Beno, agur!!!

Volver arriba
Mensaje    Asunto: Responder citando

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
Ver perfil de usuario Enviar mensaje privado Enviar email MSN Messenger
Mensaje    Asunto: Responder citando

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
Ver perfil de usuario Enviar mensaje privado Visitar sitio web del autor MSN Messenger
Mensaje    Asunto: Responder citando

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
Ver perfil de usuario Enviar mensaje privado
Mensaje    Asunto: Responder citando

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
Ver perfil de usuario Enviar mensaje privado Visitar sitio web del autor MSN Messenger
Mensaje    Asunto: Responder citando

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
Ver perfil de usuario Enviar mensaje privado Visitar sitio web del autor
Mensaje    Asunto: Responder citando

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
Ver perfil de usuario Enviar mensaje privado Visitar sitio web del autor MSN Messenger
Mostrar mensajes de anteriores:   
Cambiar a:  
No puedes publicar temas nuevos en este foro
No puedes responder a temas en este foro
No puedes editar tus mensajes en este foro
No puedes borrar tus mensajes en este foro
No puedes votar en las encuestas de este foro


Hosting WordPress Indedmedia desde 3,99 €
© 2002–2026 Club Builder · Funciona con phpBB.