如何把这个sql语句写成存储过程?
以下这个代码中, lBrandID,lLanguageID,lCategoryID均为从前一个页面传递进来的变量,我这个大语句主要实现从上一个页面的点击查询产品子类的时候生成页面的sql,由于现在数据量很大,每次点击都要消耗很长时间的查询,因此我想以存储过程实现,但是我不知道如何写,另外,这种想法是否成熟?请高手给与解答,并且能写出存储过程,谢谢!
select Distinct products.id,nvl(products.SSIXDIGITCODE,'000000') sku,
products.sname,products.sdesc,products.NDMPRICE,NBEANS,npri,
CODEDESC.SNAME dawei,NBRANDID,NBEANSPROMOTION,NDMPRICEPROMOTION,
0 mPrice,-1 nSaleID,products.NEXCHANGEHALLID nDefaultProductLine,0 nIsInCabinet,
2 nIsOutOfStock,0 mMinQuantity,1 fInvQty,1 fAllocateQty,
1 fInvSafeQty,0 mMinQuantity, NCLOBDETAILS,NBLOBIMGBIG,NBLOBIMGSMALL
from products,CODEDESC
where NBRANDID =1
and products.NUNITID = CODEDESC.id(+) and CODEDESC.NCODETYPEID=20 and CODEDESC.NLANGUAGEID=1
and products.nstatusid=1
and products.nlockid=1
and products.nSaleID=1
and products.NLANGUAGEID =1
and products.NDMPRICE > 0
and products.npri > 0
and products.id not in
( select NPRODUCTID from DMCATEGORYPRODUCT where NCATEGORYID = 1 )