mysql怎么判斷集合 判斷集合的主要依據是什么

mysql 判斷字符串是否有交集

DROP FUNCTION IF EXISTS `INTE_ARRAY`;

創新互聯-專業網站定制、快速模板網站建設、高性價比五指山網站開發、企業建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式五指山網站制作公司更省心,省錢,快速模板網站建設找我們,業務覆蓋五指山地區。費用合理售后完善,10年實體公司更值得信賴。

delimiter //

-- 集合交集檢查函數

-- @param varchar(255) setA A 集合 如 "1,3,5,9"

-- @param varchar(255) setB B 集合 如 "8,2,3,7"

-- @return int(1) B 集合內單元在 A集合 內存在則返回 1 否則返回 0

CREATE FUNCTION `INTE_ARRAY` (setA varchar(255),setB varchar(255)) RETURNS int(1)

BEGIN

DECLARE idx INT DEFAULT 0 ; -- B 集合單元索引

DECLARE len INT DEFAULT 0;-- B 集合表達式長度

DECLARE llen INT DEFAULT 0;-- 最后檢查位置

DECLARE clen INT DEFAULT 0;-- 當前檢查位置

DECLARE tmpStr varchar(255);-- 臨時檢查數據集

DECLARE curt varchar(255);-- B 當前檢查的單元

SET len = LENGTH(setB);

WHILE idx len DO

SET idx = idx + 1;

SET tmpStr = SUBSTRING_INDEX(setB,",",idx);

SET clen = LENGTH(tmpStr);

-- 獲取當前 setB 中的單元

IF idx = 1 THEN SET curt = tmpStr;

ELSE SET curt = SUBSTRING(setB,llen+2,clen-llen-1);

END IF;

-- 檢查是否存在于 setA 中

IF FIND_IN_SET(curt,setA) 0 THEN RETURN 1;

END IF;

-- 當前檢查終點與上次檢查終點相同則跳出

IF clen = llen THEN RETURN 0;

END IF;

SET llen = clen;

END WHILE;

RETURN 0;

END;

//

delimiter ;

select INTE_ARRAY("1,3,5,9","8,2,3,7") as is_inte_array;

--select INTE_ARRAY("1,3,5,9","2,8,6,10") as is_inte_array;

--select INTE_ARRAY("10,3,5,9","2,8,6,10") as is_inte_array;

--select INTE_ARRAY("1,30,5,9","2,8,6,10") as is_inte_array;

--select INTE_ARRAY("1,30,5,9","2,30,6,10") as is_inte_array;

MySQL——集合查詢

SELECT語句的查詢結果是記錄的集合,多個SELECT語句的結果可進行集合操作

分類:

案例:查詢中國的用戶與其他年齡小于18歲的用戶

并集

交集

差集

mysql查詢語句最常用10個

(1)查詢表中全部信息:

select * from 表名

(2)查詢表中指定列的信息:

select 列1,列2 from 表名

(3)去重:

select distinct 列... from 表名

(4)拼接結果:

select concat(列1,列2) from 表名

(5)設置別名(注意:關鍵字as可以省略)

select 列 as 別名 from 表名

select 列 別名 from 表名

(6)條件查詢:

select 列... from 表名 where 條件

條件中比較運算符:(等于:= ?大于: ?大于等于:= ?小于: ?小于等于:= ?不等于:!= 或 )

(7)where 列 ?比較運算符 ?值

注意:字符串、日期需使用單引號括起來

(8)邏輯運算符(并且:and或? ?或:or? ?非:not或!)

where 條件1 邏輯運算符 條件2

where not 條件

(9)范圍查詢:

where 列 between 條件1 ?and 條件2;? ? ? ? ? //列在這個區間的值where 列 not between 條件1 and 條件2;? ? //不在這個區間where !( 列 between 條件1 and 條件2 );? ? ?//同樣表示不在這個區間

集合查詢(判斷列的值是否在指定的集合中):

where 列 in(值1,值2); ? ? ? ? ?//列中的數據是in后的值里面的where 列 not in(值1,值2); ? //不是in中指定值的數據

null值查詢(注意:列中值為null不能使用=去查詢):

where 列 is null; ?//查詢列中值為null的數據

資料來源?網頁鏈接

mysql中 怎樣根據姓名集合查詢id集合?

select *from emp where name in('張三','李四','王五');

如果()里面的是變量,可以用數組,只不過數組要處理一下

mysql怎么從集合中查詢數據

1、選中需要測試的數據庫,并查看測試數據庫表;由于表t_people_info中的id是主鍵,求id的個數即是求數據庫表的總記錄數,代碼如下:

select count(id) from t_people_info;

2、查看數據庫表t_people_info中年齡中最小值,需要用到集合函數min(),代碼如下:

select min(p_age) from t_people_info;

3、查看數據庫表t_people_info中年齡中最大值,需要用到集合函數max(),代碼如下:

select max(p_age) from t_people_info;

4、查看數據庫表t_people_info中年齡中平均值,需要用到集合函數avg(),代碼如下:

select avg(p_age) from t_people_info;

5、若想統計t_people_info中的年齡的總和,用到集合函數sum(),

代碼如下:

select sum(p_age) from t_people_info;

6、統計數據庫表中記錄個數,除了使用count(主鍵)外,可以使用count(1)、count(*)和count(0),

代碼如下:

select count(1) from t_people_info;

select count(*) from t_people_info;

select count(0) from t_people_info;

分享文章:mysql怎么判斷集合 判斷集合的主要依據是什么
網站路徑:http://m.kartarina.com/article18/hgjgdp.html

成都網站建設公司_創新互聯,為您提供營銷型網站建設商城網站搜索引擎優化自適應網站ChatGPT標簽優化

廣告

聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯

微信小程序開發
主站蜘蛛池模板: 无码中文人妻在线一区| 91精品无码久久久久久五月天 | 亚洲国产AV无码专区亚洲AV | 无码精品日韩中文字幕| 日韩国产精品无码一区二区三区| 国产怡春院无码一区二区| 国产色爽免费无码视频| 精品人妻系列无码人妻漫画| 中文字幕无码免费久久9一区9| 日韩av无码中文字幕| 亚洲中久无码永久在线观看同| 免费无码又爽又刺激高潮| 未满十八18禁止免费无码网站| 亚洲成a人在线看天堂无码| 2024你懂的网站无码内射| 无码免费一区二区三区免费播放| 人妻无码久久中文字幕专区| 亚洲AV色无码乱码在线观看| 麻豆国产精品无码视频| 亚洲国产精品无码久久久蜜芽 | 亚洲中文字幕无码av| 亚洲AV无码1区2区久久| 亚洲午夜福利精品无码| 免费无码一区二区三区蜜桃大| 亚洲熟妇无码八V在线播放| 久久亚洲AV成人出白浆无码国产| 国产乱人无码伦av在线a| 亚洲欧洲日产国码无码久久99| 免费无码午夜福利片69| 一区二区三区无码高清| 伊人久久大香线蕉无码麻豆| 亚洲?V无码成人精品区日韩| 无码精品A∨在线观看无广告| 亚洲AV无码一区二区三区久久精品| 无码人妻久久久一区二区三区| 亚洲AV中文无码字幕色三| 无码人妻视频一区二区三区| 人妻丰满av无码中文字幕| 久久亚洲AV成人无码国产| 精品无码无人网站免费视频| 99久久人妻无码精品系列|