Imagine wewe ni dba katika kampuni ya logistic umepewa kazi na boss uonyeshe mizigo inakaa muda gani mpaka inatoka hapa chini naweka table yenye field ya item_id ,handlintype kuonyesha mzigo umeingia au umetoka na handling date kuonyesha tarehe ya mzigo kuingia au kutoka na quantity ambayo siyo ya muhimu sana sasa andika query itakayokupa idadi ya siku ya mzigo kukaa kwenye store yenu.
Karibuni
Sijui ni mimi sikuelewi au hujaandika swali kiufasaha? Mfano hapo kwenye handling_date ndo mzigo unatoka au unaingia? Kwa sababu mzigo unaingia na kutoka nilitegemea kuona column mbili za tarehe ili kupata difference ya siku kutoka kwenye hizo tarehe, mfano uweke handling_date kuwa ndo mzigo umeingia na due_date ndo mzigo unatoka, bila kujua tarehe ya mzigo umeingia lini na unatoka lini huwezi kupata difference ya siku,
Pili huja specify ni database gani unatumia, ni MySQL, SQLite, oracle DB au ipi!? Hii ingesaidia watu kukusaidia kwa usahihi maana kuna vitu vidogo huwa zinatofautisha query zake kwenye kila DB , sasa kama hujaspecify ni DB gani unatumia tegemea kupata usichokihitaji ingawa itakuwa imesolve tatizo lako kwa 100% bali wewe utashindwa kuimplement kwenye tatizo lako
Tatu, hujaspecify kama kuna supportive language yoyote kwenye query zako kama vile PHP, JAVA au nyinginezo au ni query tu pasipo language yoyote
Ingekuwa ni mimi ningeweka column mbili kama nilivyosema hapo juu (handling_date na due_date) kisha query yangu ingekuwa hivi
SELECTE DATEDIFF(due_date, handling_date) as remaining_days FROM my_table WHERE id_item = 1
Hii ni kwa MySQL DB tu sijui kama DB nyingine zina function ya kupata difference ya days
Kama ningekuwa na supportive language kama PHP, ingekuwa hivi
$query = $db->query("SELECT * FROM mytable");
foreach ($query->result() as $row){
$handling_date = strtotime($row->handling_date);
$due_date = strtotime($row->due_date);
if($due_date >$handling_date){
$hours = $due_date - $handling_date;
$hours = $hours / 3600;
$time_left = round($hours / 24);
if($time_left < 1){
$time_left = "Less than 1 day ";
}else{
$time_left = $time_left."days remaining ";
}
}else{
$time_left = "Expired ";
}
echo $time_left;
}
Hizi examples zote ni assumptions tu kwa mimi understand yangu juu ya swali lako unless toa maelezo yaeleweke