> 데이터 베이스 > MySQL 튜토리얼 > 【原创】日志表设计一例分析

【原创】日志表设计一例分析

WBOY
풀어 주다: 2016-06-07 17:21:49
원래의
1073명이 탐색했습니다.

关于关系表的设计归根结底有两个方面。第一,就是完全按照范式理论去设计,一般来说达到第三范式就可以了,或者你可以划分的更细到达更上一层次。比如第四,第五

关于关系表的设计归根结底有两个方面。

第一,就是完全按照范式理论去设计,一般来说达到第三范式就可以了,或者你可以划分的更细到达更上一层次。比如第四,第五,第六等等。这种设计有自己的可读性很强,,但是有一点,在检索数据的时候增加了多张关系表来做关联的开销。

第二,就是在范式理论上适当的做些反范式,有的东西还是不要太剥离的好。(窄表以及宽表) 这点和软件设计中的紧耦合松耦合理论一致。


下面我就以常用的LOG表来做下演示,其中有两种表的实际,一种是窄表,一种是稍微宽一点的表。

窄表:log_ytt

mysql> show create table log_ytt;     +-------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | Table       | Create Table                                                                                                                                                             | +-------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | log_ytt | CREATE TABLE `log_ytt` (   `ids` bigint(20) DEFAULT NULL,   `log_time` datetime DEFAULT NULL,   KEY `idx_u1` (`ids`,`log_time`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 |  +-------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ 1 row in set (0.00 sec)


表记录数

mysql>  select * from log_ytt where ids > '4875000001';                                                                                    +------------+---------------------+ | ids        | log_time            | +------------+---------------------+ | 7110000001 | 2014-05-20 21:56:42 |  | 6300000001 | 2014-05-20 21:56:42 |  | 6750000001 | 2014-05-20 21:56:42 |  | 5310000001 | 2014-05-20 21:56:42 |  | 7200000001 | 2014-05-20 21:56:42 |  | 7380000001 | 2014-05-20 21:56:42 |  | 5760000001 | 2014-05-20 21:56:42 |  | 6930000001 | 2014-05-20 21:56:42 |  | 6660000001 | 2014-05-20 21:56:42 |  | 5670000001 | 2014-05-20 21:56:42 |  | 6210000001 | 2014-05-20 21:56:42 |  | 5850000001 | 2014-05-20 21:56:42 |  | 6570000001 | 2014-05-20 21:56:42 |  | 5580000001 | 2014-05-20 21:56:42 |  | 5130000001 | 2014-05-20 21:56:42 |  | 7290000001 | 2014-05-20 21:56:42 |  | 6390000001 | 2014-05-20 21:56:42 |  | 5490000001 | 2014-05-20 21:56:42 |  | 5220000001 | 2014-05-20 21:56:42 |  | 7560000001 | 2014-05-20 21:56:42 |  | 7470000001 | 2014-05-20 21:56:42 |  | 7020000001 | 2014-05-20 21:56:42 |  | 6840000001 | 2014-05-20 21:56:42 |  | 6030000001 | 2014-05-20 21:56:42 |  | 6480000001 | 2014-05-20 21:56:42 |  | 7650000001 | 2014-05-20 21:56:42 |  | 5940000001 | 2014-05-20 21:56:42 |  | 6120000001 | 2014-05-20 21:56:42 |  | 7740000001 | 2014-05-20 21:56:42 |  | 5400000001 | 2014-05-20 21:56:42 |  | 5760000001 | 2014-05-21 03:19:07 |  | 6840000001 | 2014-05-21 03:19:17 |  | 7020000001 | 2014-05-21 03:19:32 |  | 7200000001 | 2014-05-21 03:19:45 |  | 7110000001 | 2014-05-21 03:19:46 |  | 7380000001 | 2014-05-21 03:19:48 |  | 5670000001 | 2014-05-21 03:19:58 |  | 6930000001 | 2014-05-21 03:19:59 |  | 6030000001 | 2014-05-21 03:20:00 |  | 5940000001 | 2014-05-21 03:20:00 |  | 7290000001 | 2014-05-21 03:20:02 |  | 6120000001 | 2014-05-21 03:20:09 |  | 5850000001 | 2014-05-21 03:20:18 |  | 5580000001 | 2014-05-21 03:20:24 |  | 6480000001 | 2014-05-21 03:25:05 |  | 6390000001 | 2014-05-21 03:25:37 |  | 6210000001 | 2014-05-21 03:25:45 |  | 7470000001 | 2014-05-21 03:26:14 |  | 6750000001 | 2014-05-21 03:27:17 |  | 5310000001 | 2014-05-21 03:27:33 |  | 5130000001 | 2014-05-21 03:27:34 |  | 6570000001 | 2014-05-21 03:27:34 |  | 7560000001 | 2014-05-21 03:27:45 |  | 5220000001 | 2014-05-21 03:27:45 |  | 5400000001 | 2014-05-21 03:27:53 |  | 5490000001 | 2014-05-21 03:27:55 |  | 6660000001 | 2014-05-21 03:28:07 |  | 6300000001 | 2014-05-21 03:28:13 |  | 7740000001 | 2014-05-21 03:28:26 |  | 7650000001 | 2014-05-21 03:28:37 |  +------------+---------------------+ 60 rows in set (0.00 sec)



接下来,我们要检索所有IDS的平均时间。 有以下两种方式:

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿