1樓:沈亮
-- # 1 PATINDEX 支援"正則"
-- 如:'%[0-9]%'、'%[^0-9]%'、'%[^0-9a-z]%'
SELECT
DISTINCT
data
FROM
-- SELECT value,data FROM
(SELECT
'123|56|89'
data
UNION
SELECT
'123|er|89'
data
UNION
SELECT
'abd|ehg|89'
data
UNION
SELECT
'abd|ehg|lju'
data)A
CROSS
STRING_SPLIT
(data
,'|'
)WHERE
PATINDEX
('%[0-9]%'
,value
)>=1/*
data
123|56|89
123|er|89
abd|ehg|89
*/PATINDEX (Transact-SQL) - SQL Server
-- #3 STRING_SPLIT適用於2016及以上版本,詳見:
-- # 4補充: 通過LIKE 限定資料是類似: 1.10/r.ry.2.134 型資料
SELECT
PATINDEX
('%[/.]%'
,val
)parstr
,-- 匹配/或者.
valFROM
(SELECT
'134.1145/2939753.234'
valUNION
SELECT
'a1145.abc./2939753.234'
valUNION
SELECT
'10.1016/j.cor.2019.104840'
valUNION
SELECT
'10 1016. 2019 104840'
valUNION
SELECT
'10.1016/22.cor.2019.104840'
valUNION
SELECT
'1.10/r.ry.2.1'
val)
AWHERE
valLIKE
'[0-9]%[.][0-9]%[/][a-z][.][a-z]%[.][0-9]%[.][0-9]%'
/*parstr val
2 1.10/r.ry.2.1
3 10.1016/j.cor.2019.104840*/
2樓:不剪髮的Tony老師
SQL Server可以用以下方法:
CREATE
TABLEt(
avarchar(10
),bvarchar(10
));INSERT
INTO
tVALUES
('0123456789'
,'123|56|89'
);INSERT
INTO
tVALUES
('0123456789'
,'125|06|88'
);SELECTa,
b,value
FROM
tCROSS
STRING_SPLIT(b
,'|');a
|b|value
|0123456789
|123|56
|89|123
|0123456789
|123|56
|89|56
|0123456789
|123|56
|89|89
|0123456789
|125
|056|88
|125
|0123456789
|125
|056|88
|056
|0123456789
|125
|056|88
|88|SELECT
DISTINCTa,
bFROM
tCROSS
STRING_SPLIT(b
,'|'
)WHERE
aLIKE
CONCAT
('%'
,value
,'%');a
|b|0123456789
|123|56
|89|另外,MySQL中正確的寫法是:
select
*from
twhere
REGEXP_LIKE(a
,b);select
*from
twhere
aREGEXPb;
求教SQL面試題目 單張表查詢某字段排在第二或第n 1問題?
查詢第幾名篩選前幾的數值,然後公升序排練。篩選出公升序排練第一名的學生的數學成績再根據這個成績去篩選出符合這個數學成績的學生名字。 明天依燃 菜鳥剛學習,試著做了一下 第乙個 SELECT Top 1 FROM SELECT FROM CHENGJI11 WHERE course 數學 dORDER...
c語言怎麼查詢陣列中最大值和最小置的位置?
心若止水 第一 通過遍歷陣列查詢陣列中最大和最小值得位置。第二 每當遍歷乙個節點,就拿這個節點的值和當前最大和最小值比較,如果此節點的值小於最小值或者此節點的值大於最大值,那麼就替換當前最大或者最小值。第三 在這裡需要宣告一下,一開始初始化最大值或者最小值一定是陣列中的元素之,如果不是陣列中的值可能...
關係型資料庫中的字段預設值 不可為空 唯一索引約束的好處和壞處是什麼?
我覺得這個跟具體的程式,具體的業務邏輯有關係。我自己設計表的時候,設定字段預設值,一般是為了防止在寫插入語句時少寫了幾個在之後的查詢時要用的字段。而設定了預設值之後,在前面的程式裡插入時還可以偷懶少寫點內容。不可為空和唯一性約束也類似,多數時候是因為業務邏輯要求不能為空或者不能重複。壞處嘛,預設值和...