>>177
% Prolog

'各ID、特定の日にちのvalueから1日前のvalueを引いた値をdiff列に出力、ついでに特定の日にちのetcを出力'(ID,定の日にち) :-
   前日・今日(_前日,_特定の日にち),
   見出し出力,
   'ID,value,日付,etc'(_ID,_value,_特定の日にち,_etc).
   前日のvalue(_ID,_前日,_前日のvalue),
   _diff is _value - _前日のvalue,
   write_formatted('%t | %t | %t | %t\n',[_ID,_diff,_特定の日にち,_etc]),
   fail.
'各ID、特定の日にちのvalueから1日前のvalueを引いた値をdiff列に出力、ついでに特定の日にちのetcを出力'(_).

見出し出力 :-
   write('ID | diff | 日付   | etc\n').

前日のValue(_ID,_前日,_前日のvalue) :-
   'ID,value,日付,etc'(_ID,_前日のvalue,_前日,_),!.
前日のValue(_,_,0).

% 前日・今日/2の定義は http://nojiriko.asia/prolog/t815.html を参照してください。