paulobergo Postado Março 17, 2009 Denunciar Share Postado Março 17, 2009 Olá pessoal... seguinte...Preciso executar uma query de consulta a uma tabela no Access.A estrutura da tabela contem, entre outros campos:licenca varchar 4 data-lic timestamp 19 nome varchar 50 data_nascto varchar 50Como se pode notar, o "ôreiudo" que criou a tabela, tratou de colocar a data de nascimento como varchar mesmo, e com tamanho 50! o conteúdo deste campo é a data de nascimento no formato AAAAMMDD, assim:19520410 espaços espaços...1963102219480329etc...Essa query funciona:select `licenca` as `Código`, `DATA-LIC` as `Data da Licença`, `nome` as `Nome do Feirante`, `DATA_NASCTO` as Nascimento1from feirantemas essa não funciona... select `licenca` as `Código`, `DATA-LIC` as `Data da Licença`, `nome` as `Nome do Feirante`, `DATA_NASCTO` as Nascimento1, substring(`DATA_NASCTO` from 1 for 10) as `Nascimento2`from feiranteEntão... como fazer para um "substring" funcionar na query, para conseguir usar umafunção cast e converter esta "data" do tipo varchar para tipo timestamp mesmo...Grato por qualquer ajuda!Abraços!Em tempo: para acessar os dados das tabelas, uso uma conexão ODBC para proporcionar o acesso através de uma aplicaçãol em Delphi6... Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 paulobergo Postado Março 17, 2009 Autor Denunciar Share Postado Março 17, 2009 Cacilda!!! é Mid!!! (coisa de Basic...)Pelo menos, em parte, já deu certo...mid(DATA_NASCTO, 1, 10) as `Nascimento2` Agora, falta converter isso em data... Algo assim, no MySQL, é tranquilo: cast( concat(substring(DATA_NASCTO, 5, 4), "/", substring(DATA_NASCTO, 3, 2), "/", substring(DATA_NASCTO, 1, 2) ) as date ) as `Nascimento2`Alguma idéia no trio SQL/ODBC/Access?Grato! abraços! Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
paulobergo
Olá pessoal... seguinte...
Preciso executar uma query de consulta a uma tabela no Access.
A estrutura da tabela contem, entre outros campos:
Como se pode notar, o "ôreiudo" que criou a tabela, tratou de colocar a data de nascimento como varchar mesmo,
e com tamanho 50! o conteúdo deste campo é a data de nascimento no formato AAAAMMDD, assim:
19520410 espaços espaços...
19631022
19480329
etc...
Essa query funciona:
select `licenca` as `Código`, `DATA-LIC` as `Data da Licença`,
`nome` as `Nome do Feirante`,
`DATA_NASCTO` as Nascimento1
from feirante
mas essa não funciona...
select `licenca` as `Código`, `DATA-LIC` as `Data da Licença`,
`nome` as `Nome do Feirante`,
`DATA_NASCTO` as Nascimento1,
substring(`DATA_NASCTO` from 1 for 10) as `Nascimento2`
from feirante
Então... como fazer para um "substring" funcionar na query, para conseguir usar uma
função cast e converter esta "data" do tipo varchar para tipo timestamp mesmo...
Grato por qualquer ajuda!
Abraços!
Em tempo: para acessar os dados das tabelas, uso uma conexão ODBC para proporcionar o acesso através de uma aplicaçãol em Delphi6...
Link para o comentário
Compartilhar em outros sites
1 resposta a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.