SQL ステートメントを使用して、名前がアルファベットで始まるレコードを取得しています
SELECT * FROM Music WHERE Title LIKE 'A%' ORDER BY Title
数字と記号で始まるタイトルを取得する SQL クエリを提案できる人はいますか?
SQL ステートメントを使用して、名前がアルファベットで始まるレコードを取得しています
SELECT * FROM Music WHERE Title LIKE 'A%' ORDER BY Title
数字と記号で始まるタイトルを取得する SQL クエリを提案できる人はいますか?
文字セットで LIKE を使用できます。
SELECT * FROM Music WHERE Title LIKE '[^A-Za-z]%' ORDER BY Title
サンプル:
declare @music table(id int identity(1,1) not null primary key, title varchar(10))
insert @music(title)
values
('test1'),
('9test'),
('0test'),
('#test')
SELECT * FROM @Music WHERE Title LIKE '[^A-Za-z]%' ORDER BY Title
- - 結果 - -
id title
4 #test
3 0test
2 9test
使用するPATINDEX
SELECT *
FROM Music
WHERE PATINDEX('[^a-zA-Z]%', Title) = 1
ORDER BY Title
PATINDEX 関数と LEFT 関数を組み合わせてこれを行うことができます。
SELECT *
FROM Music
WHERE PATINDEX('%[A-Z ,a-z]%',LEFT(Title,1)) = 0
編集:開始時にアルファベット以外の文字を検索しているため、= 0 に変更すると、= 1 はアルファベット文字で始まるものを返します。