FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour Se puede hacer esto ?
Posts: 464
Joined: Tue Mar 21, 2006 07:30 PM
Se puede hacer esto ?
Posted: Sun May 29, 2016 08:00 PM

Hola a todos

Me gustar铆a saber si se puede usar en una b煤squeda SQL SELECT * FROM XXX WHERE Substr(campo,1,3) = Expresion ORDER BY (campo de orden)
y como ponerlo en la sentenc铆a

Gracias

Un saludo
Pedro
gahetesoft@gmail.com
FWH12.06 BCC582, Xverce CW, Pelles C 6.00.4,PSPAD 4.54
y ahora con ADO
Posts: 694
Joined: Fri Oct 07, 2005 06:58 AM
Re: Se puede hacer esto ?
Posted: Sun May 29, 2016 09:03 PM
La funci贸n que buscas en sql es SubString()

https://msdn.microsoft.com/es-es/library/ms187748(v=sql.120).aspx
Un saludo

Fernando Gonz谩lez Diez

ALSIS Sistemas Inform谩ticos
Posts: 989
Joined: Thu Nov 24, 2005 03:01 PM
Re: Se puede hacer esto ?
Posted: Tue May 31, 2016 11:09 AM

Pedro,
usar una funcion en el where probablemente suprima las optimizaciones que suele hacer un SQL. En MySQL puede usar un SELECT * FROM XXX WHERE campo LIKE "ABC%", que es mucho m谩s r谩pido porque sabe como optimizarlo. Si usas otro motor habr谩 que ver si soporta el LIKE.

Un saludo

Saludos
Carlos Mora
http://harbouradvisor.blogspot.com/
StackOverflow http://stackoverflow.com/users/549761/carlos-mora
鈥淚f you think education is expensive, try ignorance"
Posts: 464
Joined: Tue Mar 21, 2006 07:30 PM
Re: Se puede hacer esto ?
Posted: Tue May 31, 2016 03:36 PM

Gracias por la respuesta Fernando, pero no me hace el recordset usando SUBSTRING.

Carlos estoy usando ADO con un ACCESS y el tema es que el campo por el que quiero sacar los datos tiene un ancho de 8 caracteres, pero solo quiero pillar los 3 primeros y que me saque todos los registros, cuyos 3 primeros digitos de ese campo sean iguales a los solicitados por el usuario, y creo que puede soportar LIKE perfectamente

Un saludo
Pedro
gahetesoft@gmail.com
FWH12.06 BCC582, Xverce CW, Pelles C 6.00.4,PSPAD 4.54
y ahora con ADO
Posts: 845
Joined: Sun Oct 09, 2005 05:36 PM
Re: Se puede hacer esto ?
Posted: Wed Jun 01, 2016 05:10 PM

Pedro,

prueba asi,

SELECT * FROM tu_tabla WHERE tu_campo LIKE "%PAQ"

aqui te va a regresar en la consulta todos los registros que en tu campo empiecen con PAQ

Saludos
Paco

____________________

Paco
Posts: 464
Joined: Tue Mar 21, 2006 07:30 PM
Re: Se puede hacer esto ?
Posted: Thu Jun 02, 2016 06:54 AM

Gracias Francisco, lo consegu铆 con LIKE y me regresa bien los registros cuyos tres primeros d铆gitos sean iguales a los pedidos por el usuario.

Ahora tengo otra duda, como hacer una comparaci贸n de un campo l贸gico, es decir traer todos aquellos registros cuyo campo X sea Verdadero , o Falso seg煤n se pida.
Lo he intentado comparando el campo con Cero y Uno, pero no me trae registros

Un saludo a todos

Un saludo
Pedro
gahetesoft@gmail.com
FWH12.06 BCC582, Xverce CW, Pelles C 6.00.4,PSPAD 4.54
y ahora con ADO
Posts: 1710
Joined: Tue Oct 28, 2008 06:26 PM
Re: Se puede hacer esto ?
Posted: Thu Jun 02, 2016 10:30 AM
Pedro

As铆
Code (fw): Select all Collapse
  WHERE !CampoL贸gico // para .F. Tambi茅n se puede poner NOT CampoL贸gico
  WHERE CampoL贸gico // para .T.


Saludos,

Adhemar
Saludos,



Adhemar C.
Posts: 845
Joined: Sun Oct 09, 2005 05:36 PM
Re: Se puede hacer esto ?
Posted: Sat Jun 04, 2016 02:40 PM
Pedro,

como dice ademar o asi:
Code (fw): Select all Collapse
WHERE tu_campologico = '0'
WHERE tu_campologico = '1'
WHERE tu_campologico is not null
WHERE tu_campologico is null


Saludos
____________________

Paco
Posts: 989
Joined: Thu Nov 24, 2005 03:01 PM
Re: Se puede hacer esto ?
Posted: Sat Jun 04, 2016 03:38 PM
Pedro,

Pedro wrote:... como hacer una comparaci贸n de un campo l贸gico, es decir traer todos aquellos registros cuyo campo X sea Verdadero , o Falso seg煤n se pida.
Lo he intentado comparando el campo con Cero y Uno, pero no me trae registros

Si pones la consulta que est谩s haciendo seguro que vamos a corregir lo que pudiera estar mal, es mucho m谩s sencillo trabajar sobre algo, sino solo podemos hacer especulaciones.

un saludo
Saludos
Carlos Mora
http://harbouradvisor.blogspot.com/
StackOverflow http://stackoverflow.com/users/549761/carlos-mora
鈥淚f you think education is expensive, try ignorance"

Continue the discussion