Article View: chile.comp.programacion
Article #3921Re: Consulta SQL ODBC: función YEAR en un Group By?
From: gato2002
Date: Sat, 08 May 2004 00:46
Date: Sat, 08 May 2004 00:46
66 lines
3643 bytes
3643 bytes
La estructura de las tablas? Juan Guillermo Fern�ndez V. escribi�: > Hola gente de mundo.... > > Necesito, una vez m�s, de la infinita sabidur�a de el ciberdespacio, que > siempre han sido tan generosos en prodigarme. > > Ocurre que me encuentro migrando unas bases de datos desde Visual FoxPro a > MySQL, en un proceso que debe repetirse autom�gicamente todas las noches asi > que no es "evento de una sola vez", como pa' que me sugieran soluciones > manuales alternativas.... > > La cosa es que estoy haciendo, v�a ODB, el siguiente QUERY: > > 'SELECT cod_art, fecha AS mesyso, cantidad, tipodoc, > IIf(tipodoc=10,(-1 * cantidad),cantidad) AS cantidad2, > Year(fecha) AS ano, Month(fecha) AS mes > FROM docu_db LEFT JOIN docde_db ON numreg = numrecor > > GROUP BY cod_art, Year(fecha), Month(fecha) > HAVING (tipodoc=8) > OR (tipodoc=10); > > Sin embargo, el sistema me responde -en su infinita sabidur�a- que: > > SQL error: [Microsoft][ODBC Visual FoxPro Driver] > SQL: Column 'COD_ART' is not found., SQL state S0022 in SQLExecDirect > > Ahora, si remuevo las clausulas Year(fecha), Month(fecha), o las reemplazo > por una columna propiamente tal (como fecha a secas) funciona bonito. Pero > si las "ALIASo", o sea, las llamo (en el Group By) como Year(fecha) AS ano, > Month(fecha) AS mes, me retorna un hermoso: > > SQL error: [Microsoft][ODBC Visual FoxPro Driver] > Command contains unrecognized phrase/keyword., SQL state 37000 in > SQLExecDirect > > La cosa es que necesito agrupar los resultados de esa forma: cod_art, A�o y > Mes, en ese orden; y A�o y Mes deben ser extra�dos de la columna fecha. > > �Alguna idea de c�mo meter estas funciones en el group by ofrecido por SQL > ODBC? > > Otros problemas adicionales que tengo son: > > Debo convertir una fecha '2004-05-07' en '2004-05-01'. Lo habr�a hecho > Year(fecha)+Month(fecha)+'01'; pero no consigo encontrar el concatenador de > Strings pa' este SQL. S�lo me top� con el engorroso concat(str1,str2), que > deber�a anidar horriblemente pa' conseguir el mismo efecto, y a�n as� no me > funciona :S > > �Alguna alternativa? > > Y por �ltimo, �cu�l ser�a, para los entendidos, el c�figo para: > > -Crear tablas temporales > -Hacer subqueries > > S�lo eso. Muchas gracias a quien pueda ofreecerme una tablita.... pa' este > naufrago... con el jefe al hombro :S > > �Gracias! > >
Technical Details
Message-ID:
<c7haof$877$1@news1.nivel5.cl>Path:
arc1-ca.pugleaf.net!controlnews3.google.com!news1.google.com!news.glorb.com!nntp-server.pubsub.com!news1.nivel5.cl!not-for-mailReferences:
<c7g8ha$ugi$1@news1.nivel5.cl>Show Full Headers
Complete Article Headers
X-Google-Language: SPANISH,CP1252 X-Google-Thread: 1593cb,369bdeface6a40b8 X-Google-Thread: fad43,8f626da355161977 X-Google-Attributes: gid1593cb,gidfad43,public Path: arc1-ca.pugleaf.net!controlnews3.google.com!news1.google.com!news.glorb.com!nntp-server.pubsub.com!news1.nivel5.cl!not-for-mail From: gato2002 <gato2002SINESTO@vtr.net> Newsgroups: chile.comp.programacion,chile.comp.www Subject: Re: Consulta SQL ODBC: función YEAR en un Group By? Date: Fri, 07 May 2004 20:46:38 -0400 Organization: Varios Lines: 66 Message-ID: <c7haof$877$1@news1.nivel5.cl> References: <c7g8ha$ugi$1@news1.nivel5.cl> NNTP-Posting-Host: cm64-mapu1-141-94.cm.vtr.net Mime-Version: 1.0 Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 8bit X-Trace: news1.nivel5.cl 1083977295 8423 200.86.141.94 (8 May 2004 00:48:15 GMT) X-Complaints-To: news@news1.nivel5.cl NNTP-Posting-Date: Sat, 8 May 2004 00:48:15 +0000 (UTC) User-Agent: Mozilla Thunderbird 0.5 (Windows/20040207) X-Accept-Language: es-es, es In-Reply-To: <c7g8ha$ugi$1@news1.nivel5.cl>