引言
在mysql資料庫使用過程中,發現沒有像db2那樣方便能自動生成行號,於是通過網路查閱資料,現整理如下,方便以後自己查閱.
建立資料庫
create database -- 建立資料庫
if not exists `sql_test` -- 如果不存在就建立,存在就不建立
default charset utf8 -- 設定預設字符集為utf-8
collate utf8_general_ci;-- 設定資料庫排序規則 utf8_general_ci
use `sql_test`;
建立表-- 建立測試表
create table s_t1(
tid varchar(10) not null primary key,
root varchar(10),
child varchar(10)
插入測試資料
insert into `s_t1` (`tid`, `root`, `child`) values('sort_0110','a','a1');
insert into `s_t1` (`tid`, `root`, `child`) values('sort_0024','a','a2');
insert into `s_t1` (`tid`, `root`, `child`) values('sort_0027','a','a3');
insert into `s_t1` (`tid`, `root`, `child`) values('sort_0028','a','a4');
insert into `s_t1` (`tid`, `root`, `child`) values('sort_0021','b','b1');
insert into `s_t1` (`tid`, `root`, `child`) values('sort_0003','b','b2');
insert into `s_t1` (`tid`, `root`, `child`) values('sort_0006','b','b3');
insert into `s_t1` (`tid`, `root`, `child`) values('sort_0001','b','b4');
insert into `s_t1` (`tid`, `root`, `child`) values('sort_0013','b','b5');
insert into `s_t1` (`tid`, `root`, `child`) values('sort_0101','c','c1');
insert into `s_t1` (`tid`, `root`, `child`) values('sort_0007','c','c2');
insert into `s_t1` (`tid`, `root`, `child`) values('sort_0002','c','c3');
insert into `s_t1` (`tid`, `root`, `child`) values('sort_0033','d','d1');
insert into `s_t1` (`tid`, `root`, `child`) values('sort_0035','d','d2');
生成行號
select
@r:=@r+1 as rounum,
a.*from
s_t1 a,
(select @r:=0) b
結果:
按組生成行號
-- 方法1 先篩選資料,在編寫序號
select
@root_no:=case when @root_val=a.`root` then @root_no+1 else 1 end as rootno,
@root_val:=a.`root` as rootval,
a.`child`
from
select * from s_t1 group by root,child
) a,(select @root_no:=1,@root_val:='') b
-- 方法2 在刪選資料的同事編寫序號
select
@group_row:=case when @parent_code=a.root then @group_row+1 else 1 end as grouprow,
@parent_code:=a.`root` as parent_code,
a.`child`
from s_t1 a ,( select @group_row:=1, @parent_code:='') as b
order by a.`root` , a.child
結果:
以上就是mysql中生成行號的方法,不知道還有沒有更簡單的
WPF DataGrid自動生成行號
在使用wpf進行應用程式的開發時,經常會為datagrid生成行號,這裡主要介紹一下生成行號的方法。通常有三種方法,這裡主要介紹其中的兩種,另一種簡單提一下。1.直接在loadingrow事件中操作。這種方式是在code behind檔案中操作。即相應的 xaml.cs檔案。如下 this.data...
WPF DataGrid自動生成行號
在使用wpf進行應用程式的開發時,經常會為datagrid生成行號,這裡主要介紹一下生成行號的方法。通常有三種方法,這裡主要介紹其中的兩種,另一種簡單提一下。1.直接在loadingrow事件中操作。這種方式是在code behind檔案中操作。即相應的 xaml.cs檔案。如下 this.data...
mysql 行號 mysql的行號問題
1 行號問題行號是指按順序為查詢結果集的行分配的連續整數。mysql資料庫在行號方面的支援並不是十分友好,沒有橡其他資料庫一樣提供類似的row number解決方案,因此得到行號是乙個十分有技巧的問題。2.1 不重複資料分析問題先看以下例項資料,建立sales表 create table sales...