sql將數(shù)組作為查詢條件 怎樣將數(shù)組作為sql中in的查詢條件?
怎樣將數(shù)組作為sql中in的查詢條件?1.EJB的Find方法 2.在顯示第一頁前將所有的記錄放在collection對象中,后續(xù)的各頁都在內(nèi)存中取。 3.每一頁都到數(shù)據(jù)庫作一次重復(fù)的查詢,然后將符合
怎樣將數(shù)組作為sql中in的查詢條件?
1.EJB的Find方法
2.在顯示第一頁前將所有的記錄放在collection對象中,后續(xù)的各頁都在內(nèi)存中取。
3.每一頁都到數(shù)據(jù)庫作一次重復(fù)的查詢,然后將符合條件的記錄顯示出來。
4.保存前幾頁的搜索結(jié)果在內(nèi)存中(經(jīng)常使用到的),后續(xù)的記錄(這些數(shù)據(jù)是多數(shù)用戶都沒有耐心看的)再通過連數(shù)據(jù)庫取得。
5.其他各種cache機(jī)制。
sql語句in后面跟的數(shù)據(jù)過多怎么解決?
解決辦法,使用臨時表:第一步:創(chuàng)建臨時表,并將in內(nèi)的數(shù)據(jù)插入到表中第二步:執(zhí)行in查詢select * from 表 where 列 in(select num from #)第三步:銷毀臨時表drop table #若是連起來寫:set nocount onselect * into # from (select "1" num union all select "2" union all select "3" union all ..... select "N") aselect * from 表 where 列 in(select num from #)drop table #