關於資料庫分割槽後的幾個查詢和補充

2021-06-23 00:11:39 字數 1334 閱讀 8858

--檢視分割槽及分割槽範圍的情況

select * from sys.partitions where object_id = object_id('secureusblog');

select * from sys.partition_range_values;

--檢視分割槽架構情況

select * from sys.partition_schemes;

--檢視某一特定分割槽列值屬於哪個分割槽

select m2.$partition.part_mediasec_func('20150325') as partition_num;

--檢視某一特定分割槽的記錄

select * from secureusblog where m2.$partition.part_mediasec_func(logtime) = 3

--檢視各分割槽所包含的記錄數

select $partition.part_mediasec_func(logtime) as partition_num,

count(*) as record_num

from secureusblog

group by $partition.part_mediasec_func(logtime)

order by $partition.part_mediasec_func(logtime);

這部分是為了以後擴充套件,比如以後分割槽不夠的時候,可以手動的新增分割槽。

--新增檔案組

alter database m2

add filegroup [fg10];

go--檔案組

alter database m2

add file(name=fg10_data,filename='c:\esafenet\fg10_data.ndf',size=1mb) to filegroup[fg10];

--新增分割槽,以後擴充套件

use m2

go

alter partition scheme part_mediasec_scheme next used fg10

alter partition function part_mediasec_func() split range ('20221231 23:59:59')

go

資料庫日誌這塊,分割槽是乙個很好的選擇,如果不分割槽,還有乙個方法就是日誌分表,按月將每個月的資料放到不同的表中。

總之日誌這塊分割槽是乙個很好的選擇,但也不是唯一的選擇,還有乙個就是syslog。什麼是syslog?

下集我再分享。

關於資料庫的遞迴查詢

1 oracle 以scott.emp表舉例 empno是人員編號,mgr是上級領導 也就是上級人員編碼 1 從上到下查詢 該查詢查詢員工jones下屬所有的員工 select emp.from emp start with ename jones connect by mgr prior empn...

關於資料庫的隨機查詢

隨機查詢資訊 select from table where id select floor rand select max id from table order by id limit 1 最後,再把語句完善一下,加上min id 的判斷。我在最開始測試的時候,就是因為沒有加上min id 的判...

MySQL 3 資料庫的查詢和幾個函式

對於包含文字的查詢,可以使用like,下面舉例說明 有一張手機內容 的資料如下 1 我們想要查詢到諾基亞開頭的資料,可以用like 模糊查詢,語句如下 select goods id,goods name from goods where goods name like 諾基亞 而後面的 是模糊查詢...