關於SQL語句的排序問題中文和數字排序

2021-03-03 23:20:26 字數 2292 閱讀 5207

1樓:匿名使用者

你得分三個欄位 來分別儲蓄市區名、字母、數字然後語句用多欄位的排序select projectno from dual order by 市區名、字母、數字 asc

2樓:匿名使用者

select projectno from dual order by substring(projectno ,1,2) asc ,substring(projectno ,3,6) asc ,substring(projectno ,9,2) asc

sqlserver排序問題,欄位中含有字母、數字、漢字,如何只按數字排序 20

3樓:匿名使用者

可以先把數值型轉字元 再根據字元的長度和數值聯合排序

order by len(convert(nvarchar(3),id)) , id

4樓:匿名使用者

如果數字都是小於10的,可以直接order by,按照字元規則排序就是你想要的這個。

如果版數字權有兩位以上的,這時候11會排在2的前面,如果想數字按照數字的規則排序,字母按照字母的規則排序,需要根據條件將數字和字母分別查詢出來進行排序,然後使用union all聯接出結果。

5樓:匿名使用者

if object_id('fn_getnumberfromstring') is not null

begin

drop function fn_getnumberfromstring;

end;

gocreate function fn_getnumberfromstring ( @str nvarchar(80) )

returns int

asbegin

declare @i int ,

@len int;

set @len = len(@str);

if @len = 0

return 0;

set @i = 1;

declare @char varchar(1);

set @char = left(@str, 1);

declare @outstr varchar(80);--用於輸e68a8462616964757a686964616f31333363373134出

declare @tmpstr varchar(81);--用於提高效能

set @outstr = '';

set @tmpstr = '0';

while @i <= @len

begin

if patindex('%[0-9]%', @char) = 1

and patindex('%[0-9]%', right(@tmpstr, 1)) = 1

begin

set @outstr += @char;

set @tmpstr += @char;

end;

if len(@outstr) > 0

and patindex('%[0-9]%', @char) = 0

set @tmpstr += @char;

if patindex('%[0-9]%', right(@tmpstr, 1)) = 0

begin

goto outlocation;

end;

set @i += 1;

set @char = substring(@str, @i, 1);

end;

outlocation:

return case when @outstr='' then 0 else cast(@outstr as int ) end;

end;go

6樓:匿名使用者

資料庫排序應該是根據第一個字元的ascii碼來的,如果第一個相同,就根據第二個

sql語句中對一個欄位排序,欄位中含有字串和數字,(怎根據數字進行排序)

7樓:匿名使用者

假如表為test,name欄位存放班級

,**如下:

select id,name,substring_index(name, '班級',1) as num

from test

order by num asc

8樓:匿名使用者

order by 欄位名稱+0 desc/asc的形式進行排序

order by 欄位名稱*1 desc/asc的形式進行排序

關於SQL語句的問題,關於SQL語句的問題,求解決

等同於count 就是分組的記錄總數 count 1 的那個1意思就是用一個長值欄位1來表示存在一條記錄用哪個數字都可以,這樣寫在欄位很多的情況下能更快 update lzhu set zaiwang select distinct zaiwang from kkkkk where kkkkk.ha...

sql語句關於外聯內聯的問題,sql 資料庫 內聯外聯

就是外連結。你說的 a.yhid b.yhid 和b.yhid a.yhid,從結果上來說是沒有區別的。比如說有a,b兩個表。a表資料如下 yhid name 1 aaaaaa 2 bbbbbb 3 cccccc b表資料如下 pid yhid pnamep1 1 devlopmentp2 4 sa...

關於SQL資料庫的問題,關於SQL新建資料庫的問題

如果你寫好了一個abc.sql檔案,再寫一個批處理檔案 bat 執行一下,就可以完成安裝,bat檔案具體寫法如下 echo off title horizon資料庫安裝 bate3 color 0a echo 正在安裝資料庫.osql s.usa p iabc.sqlecho 全部完成 s.是安裝到...