干熟妇在线视频午夜剧场一级A级|99成人香视频日本两性激情视频|久久 午夜福利无码精品人妻一区|热久久超碰精品精品少妇一区二区|五月天综合在线国产一区免费视频|亚洲成人中心热re久久99|亚洲国产怡红院丁香五月综合h|玖玖九久久久午夜射精视频

十年專(zhuān)注于品牌網(wǎng)站建設(shè) 十余年專(zhuān)注于網(wǎng)站建設(shè)_小程序開(kāi)發(fā)_APP開(kāi)發(fā),低調(diào)、敢創(chuàng)新、有情懷!
南昌百恒網(wǎng)絡(luò)微信公眾號(hào) 掃一掃關(guān)注
小程序
tel-icon全國(guó)服務(wù)熱線:400-680-9298,0791-88117053
掃一掃關(guān)注百恒網(wǎng)絡(luò)微信公眾號(hào)
掃一掃打開(kāi)百恒網(wǎng)絡(luò)微信小程序

百恒網(wǎng)絡(luò)

南昌百恒網(wǎng)絡(luò)

數(shù)據(jù)查詢(xún)過(guò)程中能不能用in、not in 、exists

百恒網(wǎng)絡(luò) 2014-06-09 5672

在做數(shù)據(jù)庫(kù)查詢(xún)過(guò)程中,遇到跨表查詢(xún),即需要用到另一張表的ID來(lái)列出當(dāng)前表的記錄,通常情況我們會(huì)想到跨表查詢(xún),結(jié)合子查詢(xún)只要使用一句SQL語(yǔ)就可以解決問(wèn)題,例如:$sql="select * from table1 where Id not in(select QuestionId from table2 where UserName='".$UserName."')",大多數(shù)初級(jí)開(kāi)發(fā)者都認(rèn)為,用查詢(xún)關(guān)鍵肯定是最優(yōu)的實(shí)現(xiàn)方法,所以大都初級(jí)開(kāi)發(fā)都會(huì)用到in或exists等語(yǔ)句,對(duì)數(shù)據(jù)記錄比較少的兩張表查詢(xún),但沒(méi)有明顯示區(qū)別,但是當(dāng)記錄才達(dá)到幾萬(wàn)條,同時(shí)有十幾個(gè)人訪問(wèn),就會(huì)明顯感覺(jué)到延時(shí),所謂的卡機(jī),就是算法執(zhí)行的效率不高出現(xiàn)的原因,針對(duì)這樣的情況,我們建議開(kāi)發(fā)者盡量避免使用這些關(guān)鍵詞那么用什么方法解決這種問(wèn)題呢?

解決方法是,我們可以用最原始的嵌套循環(huán),第一把子查詢(xún)的中的ID一個(gè)個(gè)讀出來(lái),再在table1 中進(jìn)行查詢(xún),這樣執(zhí)行的速度比較快.代碼如下所示:

$sql="select QuestionId from table2 where UserName='".$UserName."'";

$result=$conn->query($sql);

if ($result)

{

while($row = $result->fetch_array())

{

$psql ="select * from table1 where id=".$row['QId'];

$presult = $conn->query($psql);

if ($presult){

$rowp = $presult->fetch_array();

…… }

}

百恒技術(shù)工程師建議大家,若是小型數(shù)據(jù)查詢(xún),使用in,exists是沒(méi)有任何問(wèn)題,盡量縮小雙邊的查詢(xún)范圍,以減輕資源的消耗.對(duì)于大型數(shù)據(jù)查詢(xún),盡量不要用.

希望此文章能對(duì)廣開(kāi)發(fā)者有所幫助,原創(chuàng)文章出自:百恒網(wǎng)絡(luò) 如轉(zhuǎn)載請(qǐng)注明出處!專(zhuān)業(yè),專(zhuān)注于南昌網(wǎng)站建設(shè),為用戶(hù)提供高品質(zhì)的網(wǎng)絡(luò)產(chǎn)品及優(yōu)質(zhì)服務(wù)是我們始終的追求.

400-680-9298,0791-88117053
掃一掃關(guān)注百恒網(wǎng)絡(luò)微信公眾號(hào)
掃一掃打開(kāi)百恒網(wǎng)絡(luò)小程序

歡迎您的光顧,我們將竭誠(chéng)為您服務(wù)×

售前咨詢(xún) 售前咨詢(xún)
 
售前咨詢(xún) 售前咨詢(xún)
 
售前咨詢(xún) 售前咨詢(xún)
 
售前咨詢(xún) 售前咨詢(xún)
 
售前咨詢(xún) 售前咨詢(xún)
 
售后服務(wù) 售后服務(wù)
 
售后服務(wù) 售后服務(wù)
 
備案專(zhuān)線 備案專(zhuān)線
 
×
中牟县| 枣庄市| 襄垣县| 屏东市| 上林县| 长子县| 靖西县| 锡林郭勒盟| 邢台县| 濮阳县| 苏州市| 茶陵县| 礼泉县| 沙田区| 任丘市| 延庆县| 兴城市| 大厂| 杭州市| 黔西| 英山县| 黄大仙区| 穆棱市| 芜湖市| 福贡县| 蓬溪县| 红河县| 贡觉县| 体育| 通山县| 外汇| 普陀区| 衡东县| 西安市| 隆林| 通渭县| 丁青县| 郴州市| 渭南市| 台中市| 邓州市|