我在使用 float 函数时遇到错误,我该如何解决?

I am getting an error regarding the use of the function float, how do I solve it?

我正在尝试将括号内的内容转换为 float 类型,但我总是遇到同样的错误。

我已经尝试更改括号以便在转换之前将整个表达式包含在 float 中,但它仍然给我同样的错误。请告诉我我该怎么做才能避免这个错误。

SELECT     
    inter.IDIntervento, 'Intervento principale' as _IDInterventoTipo, 1 as _IDInterventoTipoN,
    inter.IDIntervento as _IDInterventoRif, inter.IDInterventoV, 
    IDCartella, IDCdc, IDCdc|| IDCartella as IDCdcIDCartella,
    ECO.TipoCardio,
    ECO.DataEsame,
    ECO.Operatore,
    ECO.TipoEco, 
    convert(float,replace(ECO.DiametroTelediastolicoVentricoloSinistro,',','.')) as VentricoloSinistro_DiametroTelediastolico,
    convert(float,replace(ECO.VolumeTelediastolicoVentricoloSinistro,',','.')) as VentricoloSinistro_VolumeTelediastolico,
    convert(float,replace(ECO.DiametroTelediastolico2VentricoloSinistro,',','.')) as VentricoloSinistro_DiametroTelediastolico2,
    convert(float,replace(ECO.VolumeTelediastolico2VentricoloSinistro,',','.')) as VentricoloSinistro_VolumeTelediastolico2,
    (SELECT cast(idinterventovalore as varchar(5))|| '='|| valore  
    FROM cch.pats_cch_interventi_valori val     

函数 convert 将字符串从一种编码转换为另一种编码。

要将字符串转换为浮点数,请使用类型转换:

CAST (replace(ECO.DiametroTelediastolicoVentricoloSinistro,',','.')
      AS double precision) AS VentricoloSinistro_DiametroTelediastolico