Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   SQL (https://www.clubdelphi.com/foros/forumdisplay.php?f=6)
-   -   Extraer varios registros con su primer caracter..... (https://www.clubdelphi.com/foros/showthread.php?t=27225)

Luis Alberto 15-11-2005 17:35:34

Extraer varios registros con su primer caracter.....
 
Hola

Espero alguien me pueda ayudar con esto....

Quiero saber si se puedo realizar este tipo de consultas


Select * from CatPartes
where cliente='1712' and NoParte=Letra



La palabra Letra es un parametro para mi entonces quiero que de esa tabla extraiga todos los de Cliente 1712 y que por ese parametro yo le pase el numero 1 y obtener todos los que inician con ese numero es posible extraerlos..o necesito alguna instruccion diferente....

Esperto me hayan entendido....

Ivanzinho 15-11-2005 17:48:17

No estoy seguro de haberte entendido bien pero prueba con:

Código SQL [-]
Select * from CatPartes 
where cliente='1712' and (Cast(NoParte as char(1))=Letra)

vtdeleon 15-11-2005 17:57:54

Saludos

YO entendi otra cosa, utilizando un Query:
Código Delphi [-]
With query1 do begin
  Close;
  Sql.Clear;
  Sql.Text:='Select * from CatPartes where cliente='1712' and NoParte=:Letra';
  ParamByName('letra').AsInteger:=1;
  Open;
end;
Asignas el numero 1 al parametro "Letra"

Luis Alberto 15-11-2005 18:01:59

Si a lo que me mandas Letra se lo voy a pasar por parametro si letra trae 0 me debe de extraer de la tabla todos los que cean del cliente 1712 y que su letra inicial sea cero.....

Luis Alberto 15-11-2005 18:05:03

Si pero creo que como lo mandas es para estraer donde exista un 1 yo quiero que extraiga todos los NoParte inicien en 1

Ivanzinho 15-11-2005 18:09:09

Ok, pues prueba como te dije yo y pásale la letra como parámetro.

Si no te funciona como te indiqué anteriormente prueba con

Código SQL [-]
select * from CatParte
where NoParte like 'letra%'
letra pasaselo como parametro

Luis Alberto 15-11-2005 18:35:12

Esto lo realizo con un query y antes de ejecutarlo mando el parametro.

Osea asi:

Código Delphi [-]
DmPartes.IBCDSPartes.Close;
DmPartes.IBCDSPartes.Params[0].Value:=PrimeraLetra;
DmPartes.IBCDSPartes.Open;

No la opciones que me diste :

La sQL que tengo es asi en el query

Código SQL [-]
   SELECT ID_PARTE, CVECTEST, NOPARTE, NUM_PL, DESCRIPCION, TIPOP,
 SERIES, OPCION, FRACCION,ID_CLIENTE,ID_USUARIO,REGIMEN,
NOPARTECTE,FECHAMOD,P_ORIGEN,P_UNITARIO,ID_USUAMOD,PESO
FROM CATPARTES 
WHERE CVECTEST ='1712'

tienes otra opcion

vtdeleon 15-11-2005 18:44:10

Cita:

Empezado por Luis Alberto
[code]

No la opciones que me diste :

La sQL que tengo es asi en el query

[code]
SELECT ID_PARTE, CVECTEST, NOPARTE, NUM_PL, DESCRIPCION, TIPOP, SERIES, OPCION, FRACCION,ID_CLIENTE,ID_USUARIO,REGIMEN,NOPARTECTE,
FECHAMOD,P_ORIGEN,P_UNITARIO,ID_USUAMOD,PESO
FROM CATPARTES
WHERE CVECTEST ='1712'
[code]

tienes otra opcion

Donde esta el campo NoParte en la linea Where??? Bueno, supongo que se te paso.
Código SQL [-]
 SELECT ID_PARTE, CVECTEST, NOPARTE, NUM_PL, DESCRIPCION, TIPOP, SERIES, OPCION, 
FRACCION,ID_CLIENTE,ID_USUARIO,REGIMEN,NOPARTECTE,
FECHAMOD,P_ORIGEN,P_UNITARIO,ID_USUAMOD,PESO
FROM CATPARTES 
WHERE CVECTEST ='1712' adn NoPart like :NoPart
Y en el query
Código Delphi [-]
DmPartes.IBCDSPartes.Close;
DmPartes.IBCDSPartes.Params[0].Value:=QuoteStr(PrimeraLetra+'%');
DmPartes.IBCDSPartes.Open;

Luis Alberto 15-11-2005 19:14:47

La intruciion Like para que me sirve?

Luis Alberto 15-11-2005 19:48:13

Gracias Vtdeleon creo que si me esta funcionando eso necesitaba me extragiera todos los similares a el paramatro que buscara yo....

Ivanzinho 17-11-2005 08:27:33

Cita:

Empezado por Luis Alberto
La intruciion Like para que me sirve?

La instrucción Like sirve para seleccionar todos aquellos valores que son COMO un valor dado. El caracter % funciona como comodín, es decir, si pones A% selecciona todos los que empicen por A, para seleccionar los que acaban por A sería %A y para los que contengan una A entonces habría que poner %A%. Funciona de manere similar al * del DOS

jachguate 17-11-2005 17:37:06

Hola Luis!

Las etiquetas que se usan en los foros se abren y cierran, por lo que, aún cuando has tenido la intención, el código no ha funcionado. Cada etiqueta se cierra anteponiendole una diagonal (/). Así, la etiqueta code se cierra con /code.

Esta vez, he editado tu mensaje original, he cambiado las etiquetas code por delphi y sql, todo con el fin que vos podas editarlo y ver cómo ha quedado.

Hasta luego.


La franja horaria es GMT +2. Ahora son las 08:40:45.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi