The Blunder

Sort by

recency

|

2143 Discussions

|

  • + 0 comments

    SELECT CEIL(AVG(CAST(Salary AS DOUBLE)) - AVG(CAST(REPLACE(CAST(Salary AS CHAR),'0','') AS DOUBLE))); FROM EMPLOYEES; ??? Why it's wrong

  • + 0 comments

    SELECT CAST ( CEILING ( AVG (CAST ( SALARY AS FLOAT ) ) - AVG( CAST( REPLACE( CAST( SALARY AS VARCHAR(20) ),'0', '') AS FLOAT )) ) AS INT ) FROM EMPLOYEES;

    This works...

  • + 0 comments

    with raw AS ( select avg(Salary) as actual ,avg(cast(replace(Salary,'0','') as SIGNED)) as mis_calculated from EMPLOYEES )

    select ceil(actual - mis_calculated) from raw

  • + 0 comments

    SELECT CEIL(AVG(Salary) - AVG(CAST(REPLACE(CAST(SALARY AS CHAR),'0','') AS UNSIGNED))) FROM EMPLOYEES;

  • + 0 comments

    SELECT CAST( CEILING( AVG(CAST(salary AS FLOAT)) - AVG(CAST(REPLACE(CAST(salary AS VARCHAR(20)), '0', '') AS FLOAT)) ) AS INT ) FROM employees;