在一般交易記錄檔中,常有需要同時顯示交易期日最後一筆與上一筆價格,可以參考以下的範例:
 
Select A.PRODUCT_NO,A.PRICE,
LAST_PRICE=CASE WHEN B.PRICE IS NULL THEN 0 ELSE B.PRICE END,
A.OUT_DATE
From PRICE_TABLE A
Left Join PRICE_TABLE B 
 on A.PRODUCT_NO= B.PRODUCT_NO And A.OUT_DATE < B.OUT_DATE 
 And C.OUT_DATE
 =(Select Max(OUT_DATE)  
  From   PRICE_TABLE
  Where  PRODUCT_NO = A.PRODUCT_NO )
Order By A.OUT_DATE

felixhuang 發表在 痞客邦 留言(0) 人氣()

程式碼很簡單,要注意引用DTS,一般位置在 C:\Program Files\Microsoft SQL Server\80\Tools\Binn\dtspkg.dll。

   using DTS;
   object pVarPersistStgOfHost = null;
   Package2Class package = new Package2Class();
   package.LoadFromSQLServer(_IP, _DB_USER, _DB_PWD, DTSSQLServerStorageFlags.DTSSQLStgFlag_Default,
    null, null, null, strPackageName, ref pVarPersistStgOfHost);

   try
   {
         package.Execute();
         bDTSflag = true;
   }
   catch(Exception exp)
   {
         throw  exp;
   }
   finally
   {
         package.UnInitialize();
         package = null;    
   }

felixhuang 發表在 痞客邦 留言(0) 人氣()

要直接在SQL語法中改變日期格式,Convert() 函式提供了一些方法,加上dateadd(),substring() 可以達成大部份改變日期格式的需求...

假設 getdate() = '2009/4/9'

Select Convert(char(10),getdate(),111)
-- =2009/04/09 (YYYY/MM/DD)

Select Convert(char(6),getdate(),112)  ,
-- =200904 (YYYYMM)

Select Convert(char(8),getdate(),11)
-- =09/04/09 (YY/MM/DD)

Select Convert(char(8),getdate(),12)
-- =090409 (YYMMDD)

Select Convert(Char(08),dateadd(month, 1, getdate()),111) +'01' 
-- =2009/05/01 (下月一號)

Select Convert(char(10),dateadd(day,-day(getdate()),dateadd(month,1,getdate())),111)
-- =2009/04/30(本月月底)(本月最後一天)

select Convert(char(10),dateadd(day,-day(getdate()),dateadd(month,2,getdate())),111)
-- =2009/05/31(下月月底)

Convert 參數查詢列表 

felixhuang 發表在 痞客邦 留言(0) 人氣()

var i=null;
var obj = document.getElementById("DropDownList1");
for (i=0; i< obj.options.length; i++)
{
    if (obj.options[i].value == strDefault) // strDefault == 預設值
    {
        obj.selectedIndex = i;
        return;
    }
}

felixhuang 發表在 痞客邦 留言(0) 人氣()

var arrData = new Array("Saab","Volvo","BMW"); //重組下拉選單內容
var strDefault = "BMW"; // 預設值
var dd1 = document.getElementById("DropDownList1");

//清空 dropdownlist
while(dd1.options.length>0)
  dd1.options.remove(0);
    
var option = null;
for (i=0; i< arrData.length; i++)

  option = document.createElement("option");
  option.text = arrData[i];
  option.value = arrData[i];
  
  if (strDefault == arrData[i])
   option.setAttribute("selected","selected");
  
  dd1.options.add(option);
 }

felixhuang 發表在 痞客邦 留言(0) 人氣()