我有下表:
CREATE TABLE Bable(id int 身份主键,名称 varchar(20),关于 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')我可以编写如下查询:
SELECT * FROM Bable WHERE about = 'texttexttexttext'如何更改此查询以返回排序的结果,使得名称包含$"的那些首先出现,然后是那些不出现的,然后每个组按 name 升序排列?>
表格结构在这里
SELECT *从 BableORDER BY CASE WHEN name LIKE '%$..' THEN 0 ELSE 1 END,姓名I have the following table:
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')
And I can write a query like the following:
SELECT * FROM Bable WHERE about = 'texttexttexttext'
How can I alter this query to return results ordered such that those with names containing "$" appear first, followed by those that do not, with each group then ordered by name ascending?
Structure of the table is here
SELECT *
FROM Bable
ORDER BY CASE WHEN name LIKE '%$..' THEN 0 ELSE 1 END,
Name
这篇关于如何按 SQL 中的任意条件排序的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持html5模板网!
将每个子标记转换为具有多个分隔符的单列-SQLConverting Every Child Tags in to a Single Column with multiple Delimiters -SQL Server (3)(将每个子标记转换为具有多个分隔符的单列-SQ
如何从多个表创建视图?How can I create a view from more than one table?(如何从多个表创建视图?)
根据前一行内的计算值创建计算值Create calculated value based on calculated value inside previous row(根据前一行内的计算值创建计算值)
如何将表格的前两列堆叠成一列,但也仅将第三How do I stack the first two columns of a table into a single column, but also pair third column with the first column only?(如何将表格的前两列堆
递归 t-sql 查询Recursive t-sql query(递归 t-sql 查询)
将月份名称转换为日期/月份编号(问题和答案的组Convert Month Name to Date / Month Number (Combinations of Questions amp; Answers)(将月份名称转换为日期/月份编号(问题和答案的组合