2013-12-19 3 views
-1

У меня есть таблица в websql, чтобы получить данные от я использую JayData и написать этотфункция JayData OrderBy производит странный результат

_context.FoodLog.include("FoodItem").orderByDescending("it.TotalCalories").toArray().then(function(foodLogs) 
{ 
    $scope.$apply(function() 
    { 
     try 
     { 
      for(var i=0; i<foodLogs.length; i++) 
      { 
       console.log(foodLogs[i].TotalCalories);        
      } 
     } 
     catch(error) 
     { 
      console.log("Inner Try "+error); 
     } 
    }) 
}); 

в консоли результат

738.00 
31.56   // why this 31.50 comes before 127.91 and 101.81 
127.91 
101.81 
10.00 
10.00 

, но это показывает, что результат -сбор в не в определенном порядке

Обновление Структура таблицы

$data.Entity.extend('SpookyHealthAppModel.FoodLog', { 
'FoodLogID': { 'key':true,'type':'Edm.Int32','nullable':false,'computed':true }, 
'Quantity': { 'type':'Edm.String','maxLength':5 }, 
'TotalCalories': { 'type':'Edm.String','maxLength':10 }, 
'DateTime': { 'type':'Edm.DateTime' }, 
'ImageCol': { 'type':'Edm.String','maxLength':50 }, 
'Sync': { 'type':'Edm.Boolean' }, 
'FoodItem': { 'type':'SpookyHealthAppModel.FoodItem','required':true,'inverseProperty':'FoodLog' }, 
'User': { 'type':'SpookyHealthAppModel.User','required':true,'inverseProperty':'FoodLog' } 
}); 
+0

@ Голосуй-Доунером Просьба указать причину или ошибку, иначе мне бы это было очень полезно – Blu

+0

, вероятно, он так и не понял, так что ... – user2794034

ответ

1

я нашел мою проблему :) По моей структуре таблицы мой запрос работает отлично Поскольку поле, на котором я поставил order by пункт имеет String DataType и результат того, по строкам, если я хочу привести в числовом порядке изменить эту строку

'TotalCalories': { 'type':'Edm.String','maxLength':10 }, 

в этом

'TotalCalories': { 'type':'Edm.Int32'}, // No need to define length now if you want in float then define float instead of int 
Смежные вопросы