資料庫組合查詢和模糊查詢

2021-07-10 03:09:07 字數 2565 閱讀 7455

/**

* 搜尋條件+排序 得到所有捲菸

* * @param is_promote

* //0表示是**,1表示捲菸列表

* @param pricevalues

* **排序 :1 降序,2公升序

* * @param price

* 批發價 預設為:不限

* @param cigarettefactory

* 菸廠 預設為:不限

* @param activity

* 活動:經營型別1:新品,2:緊俏,3:順銷,9:其他 預設為:不限

* @param issearch 是否模糊搜尋

* * @param searchtext 模糊搜尋內容

*/public

list

getcigaretteall(string is_promote,int pricevalues, string price,

string cigarettefactory, string activity,string issearch,string searchtext) else

if(activity.

equals(nolimit))else

if(activity.

equals("緊俏"))else

if(activity.

equals("順銷"))else

if(activity.

equals("其他"))

if (!price.

equals(nolimit))

if (!cigarettefactory.

equals(nolimit))

"' ");

}if (!activity.

equals(nolimit))

"'");

}if (is_promote.

equals("0"))

"' ");

}if(issearch.

equals("true"))

+searchtext+

"%"+

"'");

}cursor cursor =

null;

string values =

""; if (pricevalues ==

1) else

log.v("tag", "賽選條件:"

+sb.tostring());

if (sb.length() ==

0) else

return getlistcigarette(cursor);

}

組合查詢就是多條件查詢,我們首先定義stringbuffer把多個條件按sql語法組合在一起,每個條件用and連線。

首先我們判斷price是全部還是**區間,如果是全部則不做處理,是**區間就拼接在sql語句中。

首先把**區間轉換成sql語言可以識別的形式:

在values資料夾下建立arrays.xml檔案:

<?xml version="1.0" encoding="utf-8"?>

name="search_prices">

全部item>

0-150item>

151-400item>

401-800item>

801+item>

string-array>

name="search_prices_value">

全部item>

price<=150 and price>=0item>

price<=400 and price>=151item>

price<=800 and price>=401item>

price>=801item>

string-array>

resources>

從arrays.xml中獲取**區間的方式:

string price = ac.getresources().getstringarray(

r.array

.search_prices_value)[index];

//index為第幾個item

注意:單引號和百分號的使用!

public

class

sortcomparator

implements

comparator

}

自定義類實現comparator,重寫compare方法,返回值為需要排序的字段做減法運算。

activity中使用sortcomparator排序:

comparator comp = new sortcomparator();

collections.sort(cigaretteurllist, comp);

cigaretteurllist為需要排序的集合。

資料庫查詢和模糊查詢

表示乙個字元,他表示匹配任意乙個字元 where name like 唐 表示查詢名字已唐開頭,且後面只有乙個字元 表示多個字元,可以匹配多個字元 where name like 唐 表示查詢名字已唐開頭的,無論後面有幾個字元 where name like 唐 表示查詢名字中含有唐字的 conca...

資料庫模糊查詢

執行資料庫查詢時,有完整查詢和模糊查詢之分。一般模糊語句格式如下 select 字段 from 表 where 某欄位 like 條件 其中,關於條件,sql提供了四種匹配模式 可以匹配任意型別和任意長度的字元,有些情況下若是中文,請使用兩個百分號 表示。select from flow user ...

資料庫模糊查詢

一 模糊查詢 運算子語法描述 is null a is null 如果操作符為null,則結果為真 is not null a is not null 如果操作符不為null,則結果為真 between a between b and c 若a在b和c之間,則結果為真 like a like b 如...