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

mysql中的find_in_set字符串查找函數(shù)解析

 更新時(shí)間:2022年08月29日 10:18:11   作者:好好生活_  
這篇文章主要介紹了mysql中的find_in_set字符串查找函數(shù),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

需求

系統(tǒng)中,不論是訂單還是退貨單,有的平臺(tái)使用需要賣(mài)家審核,有的則不需要,所以在系統(tǒng)中可以設(shè)置訂單或退貨單的流程節(jié)點(diǎn)。

而對(duì)于每個(gè)流程節(jié)點(diǎn),客戶(hù)需求是每個(gè)節(jié)點(diǎn)都要根據(jù)系統(tǒng)下的員工的角色去做分發(fā),從而訂單指定到個(gè)人,而不是整個(gè)公司的員工都可以處理。

方案

對(duì)于上述場(chǎng)景,我實(shí)現(xiàn)的方案是在訂單表和退貨單表都增加了對(duì)應(yīng)節(jié)點(diǎn)待處理人字段,多個(gè)人可處理的話(huà),則用,分隔,保存對(duì)應(yīng)員工的id集合。

所以,在查詢(xún)訂單的方法上我們也需要進(jìn)行對(duì)應(yīng)的修改,每個(gè)人只能看到自己可處理的訂單。

表內(nèi)容樣例如下:

員工登錄系統(tǒng),我們可以得到其對(duì)應(yīng)的id,而我們需要將其id去對(duì)應(yīng)的字段查找,是否在業(yè)務(wù)審核,財(cái)務(wù)審核或發(fā)貨人的集合中。這時(shí)候,SQL該怎么改?

函數(shù)

在改SQL之前,我想的是,之前總結(jié)過(guò)MYSQL的很多函數(shù),而對(duì)于上面的實(shí)現(xiàn),MYSQL中肯定會(huì)有對(duì)應(yīng)的函數(shù)幫助我們實(shí)現(xiàn)。果真,被我查到了。

1. 介紹

MySQL提供了一個(gè)名為FIND_IN_SET()的內(nèi)置字符串函數(shù),允許您在逗號(hào)分隔的字符串列表中查找指定字符串的位置。

2. 語(yǔ)法:FIND_IN_SET(needle,haystack)

FIND_IN_SET()函數(shù)接受兩個(gè)參數(shù):

  • needle是要查找的字符串。
  • haystack是要搜索的逗號(hào)分隔的字符串列表。

FIND_IN_SET()函數(shù)根據(jù)參數(shù)的值返回一個(gè)整數(shù)或一個(gè)NULL值:

  • 如果needle或haystack為NULL,則函數(shù)返回NULL值。
  • 如果needle不在haystack中,或者h(yuǎn)aystack是空字符串,則返回零。
  • 如果needle在haystack中,則返回一個(gè)正整數(shù)。

3. 實(shí)戰(zhàn)

下面是項(xiàng)目中查編號(hào)為8910的員工可處理的待業(yè)務(wù)審核的訂單SQL:

SELECT
	t.id_,t.order_sn,t.create_time, t.business_employee_ids,cus.customer_title
FROM
	wms_orders t
LEFT JOIN wms_customer cus ON cus.id = t.buyer_id
WHERE
	t.order_status != 100
AND t.comp_id = 8815
AND FIND_IN_SET(
	'8910',
	t.business_employee_ids
)
AND t.order_status = 14
AND (
	t.parent_order_sn IS NULL
	OR t.parent_order_sn = ''
)
ORDER BY
	t.id_ DESC

結(jié)果如下:

上面結(jié)果截圖中,框出的三條訂單,id為6594,6523,6373是只有員工編號(hào)為8910能處理的,我們將上面的SQL員工編號(hào)改為8912,則此三條訂單應(yīng)該是不在結(jié)果范圍內(nèi)的, 從而驗(yàn)證使用此函數(shù)查詢(xún)是否可行。

查詢(xún)結(jié)果如下:

結(jié)果證明查詢(xún)是沒(méi)有問(wèn)題的。

插曲

前兩天,有個(gè)同事在群里發(fā)了個(gè)截圖,問(wèn)了個(gè)問(wèn)題,如下:

簡(jiǎn)單描述下:

圖片地址那一列存的是我們的舊數(shù)據(jù)中心的地址,而現(xiàn)在新數(shù)據(jù)中心上線(xiàn)了,所以需要統(tǒng)一替換成新的地址獲取圖片。

看完后,我就想到了之前用到過(guò)MYSQL中的REPLACE()函數(shù),可以做到將字符串替換。所以,update的語(yǔ)句如下:

UPDATE wms_platform_wear_brand
SET brand_img = REPLACE (
	brand_img,
	"http://***/udata/interface/timer/pic/getAttachPic.do?attachId=",
	"wms/orderGoods.do?method=getAttachPic&attachId="
)

總結(jié)

MYSQL很強(qiáng)大,提供了很多內(nèi)置函數(shù),從而可以幫助我們很容易就得到了我們想要的結(jié)果。

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • mysql?count()函數(shù)不計(jì)算null和空值問(wèn)題

    mysql?count()函數(shù)不計(jì)算null和空值問(wèn)題

    這篇文章主要介紹了mysql?count()函數(shù)不計(jì)算null和空值問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-08-08
  • Canal監(jiān)聽(tīng)MySQL的實(shí)現(xiàn)步驟

    Canal監(jiān)聽(tīng)MySQL的實(shí)現(xiàn)步驟

    本文主要介紹了Canal監(jiān)聽(tīng)MySQL的實(shí)現(xiàn)步驟,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2022-08-08
  • mysql子查詢(xún)(單行子查詢(xún),多行子查詢(xún),多列子查詢(xún))

    mysql子查詢(xún)(單行子查詢(xún),多行子查詢(xún),多列子查詢(xún))

    本文主要介紹了mysql子查詢(xún)(單行子查詢(xún),多行子查詢(xún),多列子查詢(xún)),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-06-06
  • MySQL每日一練項(xiàng)目之校園教務(wù)系統(tǒng)

    MySQL每日一練項(xiàng)目之校園教務(wù)系統(tǒng)

    這篇文章主要給大家介紹了關(guān)于MySQL每日一練項(xiàng)目之校園教務(wù)系統(tǒng)的相關(guān)資料,教務(wù)管理系統(tǒng)是一套高校專(zhuān)用管理系統(tǒng),主要用于解決信息化辦公流程、學(xué)生管理、課程管理、教職工管理等相關(guān)問(wèn)題,需要的朋友可以參考下
    2023-09-09
  • MySQL多表查詢(xún)機(jī)制

    MySQL多表查詢(xún)機(jī)制

    這篇文章主要介紹了MySQL多表查詢(xún)機(jī)制,多表查詢(xún)首先離不開(kāi)等值連接,下文我們從等值連接展開(kāi)詳細(xì)內(nèi)容,具有一定的參考價(jià)值需要的小伙伴可以參考一下
    2022-03-03
  • Mysql8.0不存在mysql.proc表的解決

    Mysql8.0不存在mysql.proc表的解決

    MySQL 8.0中官方移除了proc表,MySQL 5.7版本中還是存在proc表的,本文就介紹MySQL 8.0的替代方案,具有一定的參考價(jià)值,感興趣的可以了解一下
    2023-10-10
  • 解決修改mysql的data_dir所引發(fā)的錯(cuò)誤問(wèn)題

    解決修改mysql的data_dir所引發(fā)的錯(cuò)誤問(wèn)題

    本文給大家分享解決修改mysql的data_dir所引發(fā)的錯(cuò)誤問(wèn)題,非常不錯(cuò)具有參考借鑒價(jià)值,需要的朋友參考下吧
    2017-04-04
  • MySQL中的用戶(hù)創(chuàng)建與權(quán)限管理

    MySQL中的用戶(hù)創(chuàng)建與權(quán)限管理

    這篇文章主要介紹了MySQL中的用戶(hù)創(chuàng)建與權(quán)限管理,文章通過(guò)圍繞主題展開(kāi)詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下
    2022-08-08
  • MySQL函數(shù)date_format()日期格式轉(zhuǎn)換的實(shí)現(xiàn)

    MySQL函數(shù)date_format()日期格式轉(zhuǎn)換的實(shí)現(xiàn)

    本文主要介紹了MySQL函數(shù)date_format()日期格式轉(zhuǎn)換的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2022-08-08
  • mysql字段名和關(guān)鍵字沖突的問(wèn)題

    mysql字段名和關(guān)鍵字沖突的問(wèn)題

    這篇文章主要介紹了mysql字段名和關(guān)鍵字沖突的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-07-07

最新評(píng)論

新河县| 巴彦县| 正安县| 新密市| 蒲城县| 开平市| 陇川县| 永善县| 叶城县| 多伦县| 阿瓦提县| 阳信县| 资中县| 蒙自县| 怀集县| 米易县| 蓬莱市| 彩票| 海伦市| 子洲县| 襄樊市| 长泰县| 中西区| 包头市| 聂荣县| 淮南市| 万山特区| 永川市| 桐柏县| 明溪县| 隆子县| 睢宁县| 呼图壁县| 太湖县| 泸溪县| 吉林省| 马边| 长治市| 东乡县| 龙川县| 饶阳县|