Can someone help me, what's here wrong?
My query:
SELECT *
FROM SZ_2017
REPLACE(CONVERT(nvarchar,CAST ((szamla_brutto) AS MONEY),1), '.00',''),
REPLACE(CONVERT(nvarchar,CAST ((szamla_netto) AS MONEY),1), '.00','')
The error:
Error Code: 80040E14
Message : There was an error parsing the query. [ Token line number = 2,Token line offset = 8,Token in error = ( ]
Minor Err.: 25501
Source : SQL Server Compact ADO.NET Data Provider
Num. Par. : 2
Num. Par. : 8
Err. Par. : (
Thanks!
I suspect what you are trying to do is:
SELECT *
, REPLACE(CONVERT(nvarchar,CAST ((szamla_brutto) AS MONEY),1), '.00','')
, REPLACE(CONVERT(nvarchar,CAST ((szamla_netto) AS MONEY),1), '.00','')
FROM SZ_2017
If you want to get rid of decimal values you can do it easier like:
CAST(CAST(szamla_brutto AS INT) AS MONEY)
Remember to store data in an appropriate datatype, if you store monetary values, store it as MONEY
or DECIMAL
, NEVER as (n)varchar!
Additionaly, since convert
and cast
are functionally synonyms, pick one and stick with it, don't mix them together.