Inconveniente подставляют datos en campo de tipo FLOAT - SQL Server - Laravel

Estoy haciendo un sistema de reportes, uso параграф SQL Server gestionar Лос datos, además de que estoy usando Laravel para ello. Ya logré mostrar los datos almacenados en la base de datos, en Ла-Виста de ми sistema, pero un detalle que noté es que tengo un campo de tipo FLOAT llamado 'Avance'....

introducir la descripción de la imagen aquí

Вход ми de ми formulario es de tipo 'Число', y tiene estas condiciones...

  
  

Cuando registro Лос datos, se almacena correctamente y asi se muestran en el SQL Server...

introducir la descripción de la imagen aquí

Pero cuando se muestran en el reporte, se ven de esta manera...

introducir la descripción de la imagen aquí

EDITO: Agrego la funcion de la consulta de registro.

public function insertar (Request $request){

        $actividad = new RegistrarActividad();

        $actividad -> avance = $request -> avance;

        $actividad -> save();


    } 

Lo que quiero es que los datos se muestren en el reporte así Комо se ven en el SQL Server, y никакой обманный esos dígitos después del punto. Танто формы Antes cuando usaba MYSQL se mostraban de la misma en ми reporte Комо en el MYSQL, pero подставляют SQL Server меня sucede este неудобный.

Gracias de antemano.

0
задан 21.12.2019, 01:43
1 ответ

Первая opciГіn простая, меняет тип информации float в десятичный (2,1), ты ocuparГЎ один байт mГЎs из-за линии, но tendrГЎs она precisiГіn желаемая. (4 из-за float, 5 из-за десятичного)

create table decimales (num float)
insert into decimales(num)
values
(0.5),
(0.6),
(0.3),
(0.6),
(0.9),
(1);
go    
alter table decimales
alter column num decimal(2,1);

Вторая opciГіn:

, Если Sql показывает тебе данные как 0.5 и 0.6...., - такой, как он возвращает их просителю. Не меняя ничего tГє cГіdigo, ты можешь тестировать в engaГ±ar типы данных, кредита, если он решает tГє проблему. Приносить данные, конвертируемые в десятичный (2,1)

declare @table table (num float)
insert into @table(num)
values
(0.5),
(0.6),
(0.3),
(0.6),
(0.9),
(1);

select cast(num as decimal(2,1)) as num 
from @table
0
ответ дан 21.12.2019, 12:13
  • 1
    Считай, что, хотя правильные решения SQL, OP работает с Laravel; ввиду чего tambié n debe´ смейся считать добавлять их написанные с Eloquent или query builder – Aprendiz 21.12.2019, 06:38