Oracle欄位根據逗號分割查詢資料
需求是表裡的某個欄位儲存的值是以逗號分隔開來的,要求根據分隔的每一個值都能查出來資料,但是不能使用like查詢。
資料是這樣的:
查詢的sql如下:
select * from ( select guid, regexp_substr(st_responsible, '[^,]+', 1, level) responsible from tt_cancle_responsible connect by level <= regexp_count(st_responsible, ',') + 1 and guid = prior guid and prior dbms_random.value is not null ) where responsible ='wyy';
查詢結果如下:
相關推薦
Oracle欄位根據逗號分割查詢資料
需求是表裡的某個欄位儲存的值是以逗號分隔開來的,要求根據分隔的每一個值都能查出來資料,但是不能使用like查詢。 資料是這樣的: 查詢的sql如下: select * from ( select guid, regexp_substr(st_responsible, '[^,]+', 1, lev
SQL篇·Oracle欄位根據逗號等分割
一、業務場景介紹 有一個表字段儲存了另一個表的關聯欄位,以“|”符號分割,如下所示: 連線查詢中當然可以使用like來關聯,但是效率很差。高效的做法應該是將該欄位按照“|”字元分割,然後關聯查詢
oracle sql 分割某個欄位中用逗號隔開的資料為行
select regexp_substr(q.nums, '[^,]+', 1, rownum,'i'), names from (select '1,2,3' nums, '張三' names f
mysql裡建立自定義函式---將某欄位以逗號分割並取出第一個資料
一、檢視常見函式的功能是否開啟 mysql> show variables like '%func%'; value值為OFF時。需要將其開啟. mysql> set gl
mysql 欄位以逗號隔開查詢包含的的問題
解決的問題看截圖,這個表裡面的rid是逗號隔開的,需要查詢rid的任何一個值在 (1,2,3)內 測試資料 CREATE TABLE `test` ( `rid` varchar(1024) DEFAULT NULL, `id` int(10) unsigne
Hibernate使用原生SQL多表查詢時欄位名相同導致查詢資料覆蓋問題解決辦法
系統測試環境: MySQL 5.0 Hibernate 3.3 由於使用了hibernate,雖然使用原生SQL繞過了hibernate自己的封裝,但是還是有些影響,比如欄位別名問題;相同的欄位名經過hibernate查詢會出現前一列覆蓋後一列的情況,這時可以用 方法來
Oracle 欄位值按逗號拆分,變為多行資料
select distinct * from ( select regexp_substr(q.nums, '[^,]+', 1, Level,'i') order_num, names from ( select '1,2,3' nums, '張三' names f
sql語句查詢某欄位中包含指定字串的資料列表,完全匹配欄位中逗號中間的字串資料
查詢出,使用者表中name欄位完全包含小明的資料資訊 User表 id name userInfo 1 小明,明明 很帥 2 小明,李明 3 明天,李強 SELECT * FROM `User` where concat(',
Oracle去除重複(某一列的值重複),取最新(日期欄位最新)的一條資料
解決思路:用Oracle的row_number() over函式來解決該問題。 解決過程: 1.查看錶中的重複記錄 select t.id, t.device_id, &nb
如何從mysql資料庫中查詢指定欄位且符合條件的資料 ,然後拼接成json字串,最後匯出json檔案
SELECT CONCAT("{'name':'",IFNULL(Name,''),"',","'sex':'",IFNULL(Sex,''),"',","'age':'",IFNULL(Age,''),"',", "'phone':'",IFNULL(Phon
SQL 根據一個欄位的一部分分組查詢
背景 遇到問題:一個表中的一個欄位表示行業分類(該欄位是個程式碼值,如10100代表大類[農、林、牧、漁業],0101,0102,0103,0104分別代表小類[農業,林業,畜牧業,漁業]),現在需要根據行業大類分組,統計各行業的人數。 行業程式碼表如下: select
Informix資料表結構分析資料整理之欄位型別說明和查詢SQL語句
查詢所有Informix資料表字段型別SQL語句: select a.tabname,b.colname,b.coltype,case b.coltype when '0' then 'CHAR' when '1' then 'SMALLINT' when '2' the
MySQL 模糊查詢某欄位用逗號隔開
1. 查詢pnum欄位中包含3或者9的記錄 SELECT * FROM test WHERE find_in_set('3',pnum) OR find_in_set('9',pnum); SELECT * FROM test WHERE CONCAT(',',pnum,'
mysql 中 find_in_set() 查詢出可變欄位用逗號分隔的目標
有時候我們在設計資料庫時有以下情況,如:在視訊表中有個欄位week, 他儲存的是視訊在周幾播放,如某視訊只在周1,4,6播放,那麼week欄位對應的值以 1,4,6 的格式儲存那們我們要用sql查詢所有視訊中周4可以播放的視訊 (這個時候不是用like能解決的,使用like可
oracle建立檢視包含clob欄位,報錯:資料型別不一致:應為-,但卻獲得CLOB
在oracle中建立檢視的時候,語句中包含有clob型別的欄位。檢視建立語句大概如下: CREATE OR REPLACE FORCE VIEW "T_PROJECTS" ("ID", "NAME","DSC_INFO") AS ( select a.id,a.name,
oracle 欄位遞增 表插入資料,id自動增1
1、建立表 create table test(id int, name varchar(32)) 2、建立序列 create
Oracle中根據時間範圍查詢資料
1、當時間條件欄位為字串型別的時候,通過以下方法查詢資料: 1.1、SELECT * FROM 表名 t WHERE 1=1 AND to_date(t.tkdat,'yyyy/MM/dd') between to_date('2017/8/1','yyyy/MM/dd')
SQL 語句 將一個表中用特殊字元分割的欄位轉換成多行資料
在開始寫之前需要先說下這兩個函式的用法, SubString(str,pos,len): 從pos位置擷取字串STR,len個字元 CHARINDEX ( expression1 ,expression2, [ start_location ] ) :expression
sql 中為資料庫中沒有的欄位根據 某欄位賦值
SELECT CASE WHEN(memberAge<18) THEN '少年' WHEN(memberAge>=18 and memberAge <30) THEN '青年' WHEN(memberAge>=30 and memberAge<50) THEN '中年' ELSE
MySQL根據時間條件查詢資料
有時我們面要統計一下資料庫中指定日期的資料,如常用的,今天,昨天,明天,本週、上週、本月、上個月份的資料,還有對日期的加減, 除了我們可以使用strtotime來算還可以參考下面方法。 SQL減去指定天數 SELECT * from 表名 where DATE