Leo*_*oki 9 sql t-sql sql-server
我有下表:
CREATE TABLE Bable
(
id int identity primary key,
name varchar(20),
about varchar(30)
);
INSERT INTO Bable (name,about) VALUES
('??? Name Firm 1','texttexttexttext'),
('??? Name Firm 2','texttexttexttext'),
('??? Name Firm 3','texttexttexttext'),
('??? Name Firm 4','texttexttexttext'),
('??? Name Firm 5','texttexttexttext'),
('??? Name Firm $1','texttexttexttext'),
('??? Name Firm $2','texttexttexttext'),
('??? Name Firm $3','texttexttexttext'),
('??? Name Firm 6','texttexttexttext'),
('??? Name Firm 7','texttexttexttext')
Run Code Online (Sandbox Code Playgroud)
我可以编写如下查询:
SELECT * FROM Bable WHERE about = 'texttexttexttext'
Run Code Online (Sandbox Code Playgroud)
如何更改此查询以返回已排序的结果,以便首先显示名称中包含"$"的结果,然后显示不包含"$"的结果,然后每个组按name升序排序?
Joh*_*Woo 19
SELECT *
FROM Bable
ORDER BY CASE WHEN name LIKE '%$..' THEN 0 ELSE 1 END,
Name
Run Code Online (Sandbox Code Playgroud)