ayuda por favor instruccion select con campo memo

905 views
Skip to first unread message

Jose Mario

unread,
Dec 20, 2013, 4:36:54 PM12/20/13
to publice...@googlegroups.com
tengo un archivo que ya esta creado y no lo puedo cambiar, asi me lo han proporcionado
hay un campo memo y dentro de el tiene un dato que quiero utilizar para hacer un gruoup by
pero me da error, que hago mal
esta es la instruccion
SELECT placa as placa,* FROM xlResults WHERE !ISNULL(placa) GROUP BY placa

este campo habeses trae .null.

gracias feliz navidad

Jose Mario

unread,
Dec 20, 2013, 4:49:17 PM12/20/13
to publice...@googlegroups.com
el error lo da en group by

Ricardo Pina

unread,
Dec 20, 2013, 5:00:14 PM12/20/13
to Grupo VFP
Hola Jose Mario

pusiste el set engine 70 ?

Saludos

--
            

                   Ricardo Pina

Desarrollo y Servicios Informáticos

                  Profesionales
               www.dsip.com.ar

 

 

Luis Maria Guayan

unread,
Dec 20, 2013, 5:03:28 PM12/20/13
to publice...@googlegroups.com
La ayuda de VFP es muy clara (y muy lógica)

The GROUP BY clause specifies one or more columns used to group rows returned by the query. Columns referenced in the SQL SELECT statement list, except for aggregate expressions, must be included in the GROUP BY clause. You cannot group by Memo, General, or Blob fields

No se puede agrupar por campo un campo Memo

Luis María Guayán
Tucumán, Argentina
_________________________
http://www.PortalFox.com
Nada corre como un zorro
_________________________

Antonio.xt

unread,
Dec 20, 2013, 5:05:48 PM12/20/13
to publice...@googlegroups.com

No estoy muy seguro de que se pueda agrupar por un campo MEMO, pero si la informacion que esta dentro de ese campo es poca, puedes pasarlo primero a un campo tipo string y luego hacer el SELECT con el GROUP BY. Me imagino que ese campo MEMO se genero mediante una conversion de tablas.



El viernes, 20 de diciembre de 2013 15:36:54 UTC-6, Jose Mario escribió:

Jose Mario

unread,
Dec 20, 2013, 5:13:50 PM12/20/13
to publice...@googlegroups.com
GRACIAS ESO HARE, lo pasare a un campo string
feliz navidad

HernanCano

unread,
Dec 20, 2013, 5:24:20 PM12/20/13
to publice...@googlegroups.com
(( antes de analizar mi propuesta, analiza las que te han dado mis colegas ))
(( no lo he probado; he utilizado conocimiento, no experiencia ))

SELECT left(NVL(alltrim(placa), "")+space(50),50) as cPlaca,* FROM xlResults GROUP BY cPlaca

SELECT left(    alltrim(placa)     +space(50),50) as cPlaca,* FROM xlResults
WHERE !ISNULL(cPlaca) GROUP BY cPlaca

SELECT left(NVL(alltrim(placa), "")+space(50),50) as cPlaca,* FROM xlResults WHERE !ISNULL(cPlaca) GROUP BY cPlaca



El viernes, 20 de diciembre de 2013 16:36:54 UTC-5, Jose Mario escribió:
Tengo un archivo que ya está creado y no lo puedo cambiar: así me lo han proporcionado.
Hay un campo memo y dentro de él tiene un dato que quiero utilizar para hacer un Group By.
Pero me da error. ¿Qué hago mal?
Esta es la instrucción:
SELECT placa as placa,* FROM xlResults WHERE !ISNULL(placa) GROUP BY placa

Este campo a veces trae .null.

Gracias. Feliz navidad.
 

Fernando D. Bozzo

unread,
Dec 20, 2013, 6:21:37 PM12/20/13
to publice...@googlegroups.com
Una alternativa a lo que plantea Hernán, pero un poco más óptima, será así:

SELECT PADR(NVL(placa,""),50) as cPlaca,* FROM xlResults GROUP BY cPlaca

La diferencia solo está en usar PADR(valor,50) en vez de
left(valor+space(50),50)

Saludos.-

HernanCano

unread,
Dec 20, 2013, 6:51:42 PM12/20/13
to publice...@googlegroups.com
Uy, Fernando. Qué noticia me has dado!!!

Sinceramente conozco lo que planteas, pero siempre lo usé como lo mencioné.

Me acabas de pellizcar el cerebro.

Muchísimas gracias.

Mario Oviedo

unread,
Dec 23, 2013, 11:22:01 AM12/23/13
to publice...@googlegroups.com
ese archvo xlresults sale de generar un archivo de excel
a dbf, y me crea el campo memo

 lnSQLHand = SQLSTRINGCONNECT( lcConnstr )
 IF lnSQLHand < 0
  MESSAGEBOX("Error de Conexi?n , Verifique.",48,"Error")
  RETURN .f.
 ENDIF
 lcSQLCmd = 'Select * FROM "'+mifilealt+'$"'
 lnSuccess = SQLEXEC( lnSQLHand, lcSQLCmd, [xlResults] )

aqui envia un error, sera que debe de estar exclusive
alter table xlresults add placa2 c(4)

para luego hacer un replace placa2 with alltrim(placa)  este campo es memo

HernanCano

unread,
Dec 23, 2013, 2:01:49 PM12/23/13
to publice...@googlegroups.com

Aclárame:
Dice que ghenera el archivo, pero también dices que sale error. Esto no es comprensible para mí.

Tampoco vi el mensaje de error.

Mario Oviedo

unread,
Dec 24, 2013, 9:26:28 AM12/24/13
to publice...@googlegroups.com
caso cerrado, gracias feliz navidad desde el salvador, centro amercia

Fernando D. Bozzo

unread,
Dec 24, 2013, 9:31:45 AM12/24/13
to publice...@googlegroups.com
Hola Mario:

Por favor, si el tema está cerrado, entrá en la web del grupo y marcá la respuesta que considerás es la solución, así le puede servir a otros y de paso queda marcado como finalizado.

Gracias.-

Mario Oviedo

unread,
Dec 27, 2013, 10:24:31 AM12/27/13
to publice...@googlegroups.com
en mi navegador no aparece finalizado

Fernando D. Bozzo

unread,
Dec 27, 2013, 10:27:27 AM12/27/13
to publice...@googlegroups.com
Hola Mario:

mail.google.com no es el "la web del grupo", es solo tu correo de GMail, la web del grupo es esta:

https://groups.google.com/forum/?fromgroups=&hl=es#!forum/publicesvfoxpro


Saludos.-

HernanCano

unread,
Dec 27, 2013, 1:36:02 PM12/27/13
to publice...@googlegroups.com
Haces click en las opciones demarcadas con elipses verdes.

O utilizas el link directo que te enseñó Fernando.



El viernes, 27 de diciembre de 2013 10:24:31 UTC-5, Jose Mario escribió:
en mi navegador no aparece finalizado
Tutorial-para-ir-al-portal-ComunidadVFP.docx
Reply all
Reply to author
Forward
0 new messages