Обсуждение: Divide Date with interger
As to divide one i number int number with date
Exemplo:
> Select Max(RazaoSocial) As mRazaoSocial, Max(Endereco) As mEndereco, Max(Bairro) As mBairro, Max(Cidade) As mCidade, Max(CEP) As mCEP, Max(UF) As mUF, ('(' || Max(DDD) || ') ' || Max(Fone1)) As mFone, Max(Data) As mData, Sum(Qtde) As mQtde, DescCor As mCor FROM Movimento, Clientes, Cores WHERE Movimento.CGC = Clientes.CGCCli And Clientes.TipoCli = 'N' And Clientes.CodCli > 1 And (Clientes.Class = 'A' Or Clientes.Class = 'B' Or Clientes.Class = 'C') And Movimento.CodCor = Cores.CodCor And Movimento.Data >=(current_date-(30*4)) And Movimento.CodProduto = '2491' And Clientes.UF = 'SP' Group By CGCCli, DescCor Order By (Sum(Qtde) / (current_date + 1 -Max(Data))) Desc
Error: ERROR: Unable to identify an operator '/' for types 'numeric' and 'interval'
You will have to retype this query using an explicit cast
Regards.
Robson- two suggestions- This is an SQL question, so it should be posted to the pgsql-sql list, not the admin list. You can get information about subscribing to the pgsql-sql list here: http://www.postgresql.org/idocs/index.php?sql-expressions.html To find information on your own, the idocs are a great resource. You can find them here: http://www.postgresql.org/idocs/ Searching on "cast" from the idocs page led me to this page, which will show you how to do the explicit cast required to make the expression you sent at least syntactically correct: http://www.postgresql.org/idocs/index.php?sql-expressions.html Regards, -Nick -------------------------------------------------------------------------- Nick Fankhauser nickf@ontko.com Phone 1.765.935.4283 Fax 1.765.962.9788 Ray Ontko & Co. Software Consulting Services http://www.ontko.com/ -----Original Message----- From: pgsql-admin-owner@postgresql.org [mailto:pgsql-admin-owner@postgresql.org]On Behalf Of Robson Martins Sent: Friday, June 14, 2002 9:39 AM To: pgsql-admin@postgresql.org Subject: [ADMIN] Divide Date with interger As to divide one i number int number with date Exemplo: > Select Max(RazaoSocial) As mRazaoSocial, Max(Endereco) As mEndereco, Max(Bairro) As mBairro, Max(Cidade) As mCidade, Max(CEP) As mCEP, Max(UF) As mUF, ('(' || Max(DDD) || ') ' || Max(Fone1)) As mFone, Max(Data) As mData, Sum(Qtde) As mQtde, DescCor As mCor FROM Movimento, Clientes, Cores WHERE Movimento.CGC = Clientes.CGCCli And Clientes.TipoCli = 'N' And Clientes.CodCli > 1 And (Clientes.Class = 'A' Or Clientes.Class = 'B' Or Clientes.Class = 'C') And Movimento.CodCor = Cores.CodCor And Movimento.Data >=(current_date-(30*4)) And Movimento.CodProduto = '2491' And Clientes.UF = 'SP' Group By CGCCli, DescCor Order By (Sum(Qtde) / (current_date + 1 -Max(Data))) Desc Error: ERROR: Unable to identify an operator '/' for types 'numeric' and 'interval' You will have to retype this query using an explicit cast Regards.