[SPARK-2659][SQL] Fix division semantics for hive

Also add `case d: Divide if d.dataType == FloatType => d`?