Me desculpe Stainle, O correto (se o banco de dados for Firebird) é substring(campo from x for y). ok
Sds, Paulo Sérgio Desenvolvedor B.Hte./MG ----- Original Message ----- From: Paulo Sérgio de Souza To: delphi-br@yahoogrupos.com.br Sent: Monday, November 06, 2006 10:32 AM Subject: Re: [delphi-br] Erro SQL Bom dia Stainle, Se o seu banco de dados for Firebird, substitua os substring(campo,x,x) por substring(campo from x order x). Espero ter ajudado, Paulo Sérgio Desenvolvedor BHte./MG ----- Original Message ----- From: stainle2003 To: delphi-br@yahoogrupos.com.br Sent: Monday, November 06, 2006 10:04 AM Subject: [delphi-br] Erro SQL usando o TQuery do Bde funciona; usando o TSQLDataSet do DBExpress dá o seguinte erro: SQL State : 42000,SQL Error Code: 170 Line 1: Incorrect syntax near ','. não se arrumar este erro; o código está abaixo, grato Stainle select substring(mat.tcodigo, 1, 3) as linha, mat.tiimes, mat.tiano, sum(mat.ttotal) as Matriz, (select sum(f03.ttotal) from esif03 f03 where (substring(mat.tcodigo, 1, 3) = substring(f03.tcodigo, 1, 3)) and (mat.tiimes = f03.tiimes) and (mat.tiano = f03.tiano) and (f03.tiopera = 2) and (f03.tihisto = 'S')) as Brasilia, (select sum(f04.ttotal) from esif04 f04 where (substring(mat.tcodigo, 1, 3) = substring(f04.tcodigo, 1, 3)) and (mat.tiimes = f04.tiimes) and (mat.tiano = f04.tiano) and (f04.tiopera = 2) and (f04.tihisto = 'S')) as Poa, (select sum(f05.ttotal) from esif05 f05 where (substring(mat.tcodigo, 1, 3) = substring(f05.tcodigo, 1, 3)) and (mat.tiimes = f05.tiimes) and (mat.tiano = f05.tiano) and (f05.tiopera = 2) and (f05.tihisto = 'S')) as Belo, (select sum(f06.ttotal) from esif06 f06 where (substring(mat.tcodigo, 1, 3) = substring(f06.tcodigo, 1, 3)) and (mat.tiimes = f06.tiimes) and (mat.tiano = f06.tiano) and (f06.tiopera = 2) and (f06.tihisto = 'S')) as Curitiba, (select sum(f07.ttotal) from esif07 f07 where (substring(mat.tcodigo, 1, 3) = substring(f07.tcodigo, 1, 3)) and (mat.tiimes = f07.tiimes) and (mat.tiano = f07.tiano) and (f07.tiopera = 2) and (f07.tihisto = 'S')) as SantaCata from esimat mat where (mat.tiimes = :pmes) and (mat.tiano = :pano) and (mat.tiopera = 2) and (mat.tihisto = 'S') group by mat.tiimes, mat.tiano, substring(tcodigo, 1, 3) order by linha ------------------------------------------------------------------------------ No virus found in this incoming message. Checked by AVG Free Edition. Version: 7.1.409 / Virus Database: 268.13.28/518 - Release Date: 04/11/2006 [As partes desta mensagem que não continham texto foram removidas] ------------------------------------------------------------------------------ No virus found in this incoming message. Checked by AVG Free Edition. Version: 7.1.409 / Virus Database: 268.13.28/518 - Release Date: 04/11/2006 [As partes desta mensagem que não continham texto foram removidas] -- <<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>> <*> Para ver as mensagens antigas, acesse: http://br.groups.yahoo.com/group/delphi-br/messages <*> Para falar com o moderador, envie um e-mail para: [EMAIL PROTECTED] Links do Yahoo! Grupos <*> Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/delphi-br/ <*> Para sair deste grupo, envie um e-mail para: [EMAIL PROTECTED] <*> O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html