最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

MySQL查詢in操作 查詢結(jié)果按in集合順序顯示

 更新時(shí)間:2010年12月17日 09:43:07   作者:  
MySQL 查詢in操作,查詢結(jié)果按in集合順序顯示的實(shí)現(xiàn)代碼,需要的朋友可以參考下。
MySQL 查詢in操作,查詢結(jié)果按in集合順序顯示
復(fù)制代碼 代碼如下:

select * from test where id in(3,1,5) order by find_in_set(id,'3,1,5');
select * from test where id in(3,1,5) order by substring_index('3,1,2',id,1);


偶爾看到的。。?;蛟S有人會(huì)注意過,但我以前真不知道
SQL: select * from table where id IN (3,6,9,1,2,5,8,7);

這樣的情況取出來后,其實(shí),id還是按1,2,3,4,5,6,7,8,9,排序的,但如果我們真要按IN里面的順序排序怎么辦?SQL能不能完成?是否需要取回來后再foreach一下?其實(shí)mysql就有這個(gè)方法

sql: select * from table where id IN (3,6,9,1,2,5,8,7) order by field(id,3,6,9,1,2,5,8,7);

出來的順序就是指定的順序了。。。。這個(gè),以前還真的從來沒用過,偶爾看到,所以就記錄了一下。一是做個(gè)筆記,二是希望可以給更多的人看到

MySQL中NOT IN語句對(duì)NULL值的處理

mysql> SELECT COUNT(name) FROM CVE WHERE name NOT IN ('CVE-1999-0001', 'CVE-1999-0002');
+-------------+
| count(name) |
+-------------+
| 17629 |
+-------------+
1 row in set (0.02 sec)
mysql> SELECT COUNT(name) FROM CVE WHERE name NOT IN ('CVE-1999-0001', 'CVE-1999-0002', NULL);
+-------------+
| count(name) |
+-------------+
| 0 |
+-------------+
1 row in set (0.01 sec)
當(dāng)在子查詢中出現(xiàn)NULL的時(shí)候,結(jié)果就一定是0了。查了一下手冊(cè),確實(shí)有這樣的說法。所以最后實(shí)際采用了這樣的查詢:
SELECT COUNT(DISTINCT name)
FROM CVE
WHERE name NOT IN (SELECT cveID FROM cve_sig WHERE cveID IS NOT NULL)
順便提一下MySQL中正則表達(dá)式匹配的簡單使用:
SELECT COUNT(alarmID)
FROM Alarm
WHERE (CVE NOT RLIKE '^CVE-[0-9]{4}-[0-9]{4}$' OR CVE IS NULL)
當(dāng)然,RLIKE也可以寫作REGEXP,我個(gè)人傾向于使用RLIKE,因?yàn)槠磳懡咏麹IKE,可以見名知義。

mysql - not in
table:info primary key(id, info_type_id)
id, info_type_id, programme_id, episode_id
3, 4, 382, 100034
3, 8, 382, 100034
4, 8, 382, 100034
6, 8, 382, 100034
7, 8, 382, 100034
8, 8, 382, 100034
9, 8, 382, 100034
10, 8, 382, 100034
11, 8, 382, 100034
12, 8, 382, 100034
13, 8, 382, 100034
100001, 4, 382, 100034
100002, 4, 382, 100034

排除(id=3 && info_type_id=8) and (id=4 && info_type_id=8)這兩條記錄,即找出其它記錄
error: select * from info where episode_id=100034 and id not in(3,4) and info_type_id not in (8);
error result:
id, info_type_id, programme_id, episode_id
100001, 4, 382, 100034
100002, 4, 382, 100034
correct: select * from info where episode_id=100034 and (id<>3 or info_type_id<>8) and (id<>4 or info_type_id<>8);
correct result:
id, info_type_id, programme_id, episode_id
3, 4, 382, 100034
6, 8, 382, 100034
7, 8, 382, 100034
8, 8, 382, 100034
9, 8, 382, 100034
10, 8, 382, 100034
11, 8, 382, 100034
12, 8, 382, 100034
13, 8, 382, 100034
100001, 4, 382, 100034
100002, 4, 382, 100034
理解:id<>3 or info_type_id<>8排除掉id=3 && info_type_id=8這條記錄,當(dāng)表中主鍵多于一個(gè)時(shí),不能簡單地使用key1 NOT IN (……) AND key2 NOT IN (……) ..

相關(guān)文章

  • SQL實(shí)現(xiàn)相鄰兩行數(shù)據(jù)的加減乘除操作

    SQL實(shí)現(xiàn)相鄰兩行數(shù)據(jù)的加減乘除操作

    這篇文章主要介紹了SQL實(shí)現(xiàn)相鄰兩行數(shù)據(jù)的加減乘除操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2020-10-10
  • 輕松解決MySQL忘記密碼如何重置的方法

    輕松解決MySQL忘記密碼如何重置的方法

    這篇文章主要為大家介紹了MySQL忘記密碼如何重置的方法詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2024-01-01
  • MySQL?EXPLAIN執(zhí)行計(jì)劃解析

    MySQL?EXPLAIN執(zhí)行計(jì)劃解析

    本文主要介紹了MySQL?EXPLAIN執(zhí)行計(jì)劃解析,通過MySQL?EXPLAIN執(zhí)行計(jì)劃的各個(gè)字段的含義以及使用方式。感興趣的小伙伴可以參考一下
    2022-08-08
  • MYSQL?常用語句速查(最新整理)

    MYSQL?常用語句速查(最新整理)

    這篇文章主要介紹了MYSQL?常用語句速查,包括庫級(jí)操作、表級(jí)操作、字段級(jí)操作和數(shù)據(jù)級(jí)操作,需要的朋友可以參考下
    2024-12-12
  • MySQL DDL 引發(fā)的同步延遲該如何解決

    MySQL DDL 引發(fā)的同步延遲該如何解決

    這篇文章主要介紹了MySQL DDL 引發(fā)的同步延遲該如何解決,幫助大家更好的理解和學(xué)習(xí)使用MySQL數(shù)據(jù)庫,感興趣的朋友可以了解下
    2021-05-05
  • 解決mysql輸入密碼閃退的問題

    解決mysql輸入密碼閃退的問題

    之前安裝的mysql一直運(yùn)行正常,但是在昨天裝了個(gè)VS2010旗艦版。結(jié)果今天mysql就不能用了,于是在網(wǎng)上看了一下最只要就是mysql的服務(wù)沒有起來的緣故。本文分享了幾個(gè)解決方案,有需要的朋友們可以參考借鑒,下面來一起看看吧。
    2016-11-11
  • SQL SERVER 日期格式轉(zhuǎn)換詳解

    SQL SERVER 日期格式轉(zhuǎn)換詳解

    本篇文章是對(duì)SQL SERVER 日期格式轉(zhuǎn)換進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-06-06
  • MySQL的主從復(fù)制步驟詳解及常見錯(cuò)誤解決方法

    MySQL的主從復(fù)制步驟詳解及常見錯(cuò)誤解決方法

    這篇文章主要介紹了MySQL的主從復(fù)制步驟詳解及常見錯(cuò)誤解決方法,文中主張同步時(shí)跳過臨時(shí)錯(cuò)誤,并對(duì)Slave_IO_Running: No錯(cuò)誤的解決給出了方案,需要的朋友可以參考下
    2016-02-02
  • mysql Event Scheduler: Failed to open table mysql.event

    mysql Event Scheduler: Failed to open table mysql.event

    這篇文章主要介紹了mysql Event Scheduler: Failed to open table mysql.event,需要的朋友可以參考下
    2016-04-04
  • 講解MySQL中的事務(wù)特性

    講解MySQL中的事務(wù)特性

    這篇文章主要介紹了講解MySQL中的事務(wù)特性,是MySQL入門學(xué)習(xí)中的基礎(chǔ)知識(shí),需要的朋友可以參考下
    2015-05-05

最新評(píng)論

全州县| 拉萨市| 阳山县| 都昌县| 香港 | 菏泽市| 罗甸县| 南投市| 张家口市| 正镶白旗| 通州市| 澎湖县| 上林县| 建平县| 屏东县| 安岳县| 鄂州市| 永丰县| 灵璧县| 高碑店市| 江孜县| 林周县| 始兴县| 广灵县| 万源市| 萍乡市| 米泉市| 武宁县| 资阳市| 长阳| 道孚县| 沁水县| 平阳县| 遂宁市| 阜城县| 长垣县| 高台县| 襄城县| 郁南县| 遂溪县| 马龙县|