MYSQL ORDER BY 字符串中的数字
MYSQL ORDER BY Number in string
我的 table 中有如下数据。但是我无法排序,因为数字在字符串的末尾。
用户末尾只有4位年份信息
我想在文章末尾按年份排序,可以吗?
Users column
USER-A-2021
USER-B-2018
USER-C-2019
USER-D-2017
USER-E-2020
USER-F-2016
像这样使用 RIGHT(str,len)
RIGHT
- Returns the rightmost len characters from the string str, or
NULL if any argument is NULL.
SELECT *
FROM data
ORDER BY RIGHT(info, 4)
CREATE TABLE data (
info varchar(20)
);
INSERT INTO data VALUES
('USER-A-2021'),
('USER-B-2018'),
('USER-C-2019'),
('USER-D-2017'),
('USER-E-2020'),
('USER-F-2016');
select *from Users order by right(UserId,4) asc;
我的 table 中有如下数据。但是我无法排序,因为数字在字符串的末尾。
用户末尾只有4位年份信息
我想在文章末尾按年份排序,可以吗?
Users column
USER-A-2021
USER-B-2018
USER-C-2019
USER-D-2017
USER-E-2020
USER-F-2016
像这样使用 RIGHT(str,len)
RIGHT
- Returns the rightmost len characters from the string str, or NULL if any argument is NULL.
SELECT *
FROM data
ORDER BY RIGHT(info, 4)
CREATE TABLE data (
info varchar(20)
);
INSERT INTO data VALUES
('USER-A-2021'),
('USER-B-2018'),
('USER-C-2019'),
('USER-D-2017'),
('USER-E-2020'),
('USER-F-2016');
select *from Users order by right(UserId,4) asc;