![](/img/trans.png)
[英]SQL query to match atleast n characters in a string even if some characters are missed in the middle
[英]Middle Fucntion/Query for odd and even string
我需要一個查詢,該查詢提供偶數字符串的兩個中間字符和奇數字符串的一個中間字符。
目前,我正在使用此代碼,但它給出了錯誤。
SELECT S_name, MID(S_name, LENGTH(S_name)/2,1) WHERE (LENGTH(S_name) %2) = 1 OR/AND SELECT S_Name, MID(S_name,LENGTH(S_name)/2,2) WHERE (LENGTH(S_name)%2)=0 FROM Student;
我也嘗試過此代碼,但是它返回空的視圖/表。
SELECT S_name FROM Student WHERE ((LENGTH(S_name) %2) = 1 AND SUBSTRING(S_name, LENGTH(S_name)/2+1, 1)) OR ((LENGTH(S_name) %2) = 0 AND SUBSTRING(S_name, LENGTH(S_name)/2-1, 2))
請看看它並指出我的錯誤。
您要在select
子句中使用case
:
select s_name,
(case when length(s_name) % 2 = 0 then substring(s_name, length(s_name)/2, 2)
else substring(s_name, 1 + length(s_name) / 2, 1)
end)
from student;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.