MYSQL 子查詢返回多列顯示
因工作需要,目前研究出一種mysql 技能,與大家分享一下。
需求:關聯查詢另一個大表資料的某些(一個以上)欄位
方案:因關聯查詢的表資料太大。多表查詢影響效率,單個子查詢又有些多餘。所以採用多列拼接子查詢,然後根據SUBSTRING_INDEX(SOURCE,SEPARETOR,INDEX+1)。
原理:子查詢返回拼接列;函式擷取還原列
可執行指令碼:
SELECT
SUBSTRING_INDEX(temp.temp_column,",",1) showFirst,
SUBSTRING_INDEX(temp.temp_column,",",-1) showOver,
SUBSTRING_INDEX(SUBSTRING_INDEX(temp.temp_column,',',2),',',-1) showTwo,
temp.*
FROM
(
SELECT (
SELECT CONCAT_WS(',','12','23','34','45')) temp_column) temp;
相關推薦
MYSQL 子查詢返回多列顯示
因工作需要,目前研究出一種mysql 技能,與大家分享一下。 需求:關聯查詢另一個大表資料的某些(一個以上)欄位 方案:因關聯查詢的表資料太大。多表查詢影響效率,單個子查詢又有些多餘。所以採用多列拼接子查詢,然後根據SUBSTRING_INDEX(SOURCE,SEP
關聯查詢 -單行子查詢返回多列
例1:select * from table1 where id =(select id from table1); 由於子查詢結果中有多行,但是where條件id = 只能有一行記錄 例2: select (select name from emp where a.job = b.job)
ORA-01427: 單行子查詢返回多個行
group by and ont sel where條件 color 解決 subquery sta 有人問題我一個問題,情況如下:他要用根據divide_act_channel_day的new_amount字段去更新divide_stat的new_amount字段。兩張表
Oracle-28-子查詢之多行子查詢&子查詢之多列子查詢
一、子查詢的基本型別之多行子查詢 (1)使用IN操作符進行多行子查詢。(總結:IN操作符後可用多行子查詢) 比如:查詢各個職位中工資最高的員工資訊。 SQL>select ename, job
oracle ora-01427 單行子查詢返回多個行,在多個數據表關聯時候出現的問題
出現這個報錯,基本上都是因為某一個表的唯一欄位記錄多了,可以對這表的這個欄位進行查重。 一開始想法是在excel裡面用篩選進行查重 但是excel返回的結果的是把重複的那行隱藏了,但是總的行數還是不變。導致我以為沒有重複記錄。 正確的應該要在資料庫裡面進行
IN,NOT IN,ANY和ALL用於比較子查詢返回多行資料時你不知道的陷阱
本文簡單講述一下在使用IN,NOT IN,ANY,ALL等對從子查詢中返回的資料做比較的時候一不小心就會犯的錯誤. 測試的的資料如下:TEST表中有3條資料,其中id為3的行name的值為null. ID Name 1 name1 2 name2 3 1,IN在子查
SQL IN 子查詢返回多個值
下午遇到一個問題,IN子查詢返回多個值。 網上查了很多文件,資料,都沒收穫。 問了技術群的同僚,竟然還被嘲笑了。IN 怎麼可能匹配多個欄位呢! 個人印象中曾經在哪裡見到過,所以就覺得不服氣。自己慢慢地去試,試出來了。 我們常用的IN 操作是這樣的: s
mysql 子查詢in,返回結果集合失敗
SELECT * FROM station_quality_detail_info qa INNER JOIN station_info sinfo on qa.station_info_id = sinfo.id WHERE FIND_IN_SET(sinfo.ser
MySQL從入門到上天(二、子查詢&多表查詢)
- 子查詢 DROP DATABASE mydb2; USE mydb1; CREATE TABLE emp( empno INT, en
mysql 標量子查詢,多表子查詢,及其效能測評
1. 解釋 標量子查詢希望得到自己所期望的查詢值,多值子查詢是期望產生一個結果的結合。 標量子查詢 如 庫中有表 當我們查詢使用語句 select * from teacher a WHERE a.id in (SELECT id from stu
mysql not in子查詢返回結果為空
今天寫sql語句的時候,希望通過not in子查詢來限制查詢結果,實際SQL語句如下: select ID as id, TYPE_CODE as typeCode , TYPE_NAME as typeName , PARENT_ID as parentsId
MYSQL中子查詢有多個結果返回怎麼處理
問題 1. 查詢條件不一樣,返回多個結果整合 在查詢的時候,有時候經常需要用到子查詢,比如查詢今天的訂單數量, 7天的訂單數量,3
mysql 子查詢
mysq sql classname sna name from use lec mysql 1.標量子查詢 select *from myuser where classid=( select classid from myclass where classname=‘
MySQL:子查詢
where lin 寫到 emp alt 量子 允許 lun 位置 對於下表, 1. 場景:查詢代課天數最多的老師的信息。 方法一:select % from teacher order by days desc limit 1 ; 該方法有漏洞:授課天數最多的老師
Oracle子查詢和多表查詢
左外連接 查詢 sele 多表查詢 字段 ora 需要 avg lar 多表查詢需要用到表的連接 連接可以分為:(自行百度) 交叉連接(數字邏輯的笛卡爾積,不做解釋) 等值連接 例如:select * from t_a, t_b where t_a.
TP框架 mysql子查詢
返回 eache 查詢 gpo row 如果 好的 span pre 一些比較復雜的業務關系,用子查詢解決. 比循環便利要好的多哈. 比如下面這句 select 和where in 語句都用了子查詢. 因為父查詢在select裏,所以用了select的字段當子查詢的條件
mysql子查詢
body 所有 lar sele sel 多列 多行 相關子查詢 單列 子查詢分類 標量子查詢:查詢結果為單行單列 列子查詢:一列多行 行子查詢:多列單行 表子查詢:多行多列 子查詢支持規則 select 標量子查詢 from 【join】表子查詢 where【h
“子查詢返回的值不止一個。當子查詢跟隨在 =、!=、<、<=、>、>= 之後,或子查詢用作表示式時,這種情況是不允許的。”SQL查詢錯誤解析
為了實現下述程式碼,首先得有資料庫和相應的表格,本文用的是https://blog.csdn.net/qaz13177_58_/article/details/5575711/中的案例,即先用連線中那些命令建立資料庫、生成資料表,然後就有了student,teacher,course,score等表。 &n
MySQL 子查詢和表連線查詢
SELECT * FROM grade; SELECT * FROM result; SELECT * FROM student; SELECT * FROM subject; SELECT s.StudentNo ,s.StudentName ,j.SubjectName ,r.Stude
MySQL子查詢中的特定關鍵字
in 主查詢 where in(列子查詢); any 任意一個 =any(列子查詢):條件在查詢結果中有任何一個匹配即可,等價於in <>any(列子查詢):條件在查詢結果中不等於任意一個 1 = any(1,2,3)===turre 1 <