Использование Lodash:
_.mergeWith(oldObj, newObj, function (objectValue, sourceValue, key, object, source) {
if ( !(_.isEqual(objectValue, sourceValue)) && (Object(objectValue) !== objectValue)) {
console.log(key + "\n Expected: " + sourceValue + "\n Actual: " + objectValue);
}
});
Я не использую ключ / объект / источник, но я оставил его там, если вам нужно доступ к ним. Сравнение объектов просто препятствует консоли печатать различия с консолью от внешнего элемента до самого внутреннего элемента.
Вы можете добавить некоторую логику внутри для обработки массивов. Возможно, сначала отсортируйте массивы. Это очень гибкое решение.
Изменено с _.merge на _.mergeWith из-за обновления lodash. Спасибо Aviron за то, что заметили изменения.
Похоже, ваш столбец имеет тип данных с плавающей точкой.
Вы должны CAST столбец значений в виде целых / десятичных чисел, а не в виде чисел с плавающей запятой.
(CAST(value AS Decimal(5,2)) * 100 AS `multiplied_value`