कुछ मदद की सराहना की जाएगी।

मेरे पास tblItem कॉलम ExpireDate (DateTime), AlertDays (Int) के साथ एक टेबल है।

मेरे द्वारा सम्मिलित प्रत्येक आइटम में एक expiredate है, मैं expiredate से पहले x दिनों में सतर्क रहना चाहता हूं।

मैं उन सभी वस्तुओं को गिनना चाहता हूं जहां today + alertdays <= ExpireDate.

मेरे पास निम्न कोड है लेकिन यह एक त्रुटि उत्पन्न कर रहा है:

क्वेरी को पार्स करने में त्रुटि हुई थी। [टोकन लाइन नंबर = 1, टोकन लाइन ऑफ़सेट = 48, त्रुटि में टोकन = चुनें]

कृपया मेरा कोड देखें:

internal static int getAlertDateExpire()
{
    SqlCeConnection con = ConectionAndData.Con;

    if (con.State == System.Data.ConnectionState.Closed)
        con.Open();

    int number = 0;

    string sqlCommand = "select count(*) from tblItem where (Getdate()+(select AlertDays from tblItem)) As today <= ExpireDate Order By ItemName ASC";

    SqlCeCommand com = new SqlCeCommand(sqlCommand, con);

    try
    {
        number = (Int32)com.ExecuteScalar();
    }
    catch (Exception ex)
    {
        throw ex;
    }
    finally
    {
        con.Close();
    }

    return number;
}
0
Plazza Sele 18 मार्च 2016, 18:04

2 जवाब

सबसे बढ़िया उत्तर

मुझे मदद मिली और मैं जवाब साझा करना चाहता हूं।

(select count(*) from tblItem where dateadd(day,AlertDays,getdate()) >= ExpireDate)
0
Plazza Sele 22 मार्च 2016, 23:04

आप केवल + का उपयोग करके DATEADD फ़ंक्शन का उपयोग करके दिन नहीं जोड़ सकते:

select count(*) from tblItem where
 DATEADD(day, (select AlertDays from tblItem) ,Getdate()) 
 <= ExpireDate
0
Ashkan Mobayen Khiabani 18 मार्च 2016, 18:44