mysql数据库实施怎么写…创建表的部分,不会用脚本,就用图形界面 *** 作的,然后要写报告了,数据库实

mysql数据库实施怎么写…创建表的部分,不会用脚本,就用图形界面 *** 作的,然后要写报告了,数据库实,第1张

贴一段给你看一下,具体问题欢迎追问。

#查看表信息

desc tb_dept;

或者

show create table tb_dept ;

另外贴一个建表语句给你参考一下。

CREATE TABLE `xy_xzxkxx` (

`id` int(12) NOT NULL AUTO_INCREMENT COMMENT '自增主键',

`xingzhengxukemingcheng` varchar(512) NOT NULL COMMENT '许可事项名称',

`xukeID` varchar(50) DEFAULT NULL COMMENT '许可ID',

`shenbaoshixiangmingcheng` varchar(512) DEFAULT NULL COMMENT '申报事项名称',

`xingzhengxiangduirenmingcheng` varchar(256) NOT NULL COMMENT '行政相对人名称',

`tongyishehuixinyongdaima` varchar(18) DEFAULT NULL COMMENT '统一社会信用代码',

`qiyezhucehao` varchar(50) DEFAULT NULL COMMENT '企业注册号',

`zuzhijigoudaima` varchar(9) DEFAULT NULL COMMENT '组织机构代码',

`juminshenfenzhenghao` varchar(64) NOT NULL COMMENT '居民身份z号',

`fadingdaibiaorenxingming` varchar(256) NOT NULL COMMENT '法定代表人姓名',

`shenpileibie` varchar(16) NOT NULL COMMENT '审批类别',

`xukewenjianbianhao` varchar(128) NOT NULL COMMENT '许可文件编号',

`xukewenjianmingcheng` varchar(256) NOT NULL COMMENT '许可文件名称',

`youxiaoqizi` varchar(10) NOT NULL COMMENT '有效期自',

`youxiaoqizhi` varchar(10) NOT NULL COMMENT '有效期至',

`xukejiguan` varchar(256) NOT NULL COMMENT '许可机关',

`xukeneirong` varchar(2048) NOT NULL COMMENT '许可内容',

`dengjizhuangtai` varchar(1) NOT NULL COMMENT '登记状态',

`difangbianma` varchar(6) NOT NULL COMMENT '地方编码',

`shujulaiyuandanwei` varchar(256) NOT NULL COMMENT '数据来源单位',

`shujugengxinshijianchuo` varchar(30) NOT NULL COMMENT '数据更新时间戳',

`beizhu` varchar(512) DEFAULT NULL COMMENT '备注',

`upload_cycle_date` varchar(20) DEFAULT NULL COMMENT '上传时间节点',

`upload_date` varchar(30) DEFAULT NULL COMMENT '上传时间',

`dept_id` int(20) DEFAULT NULL COMMENT '部门编号',

`createtime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '创建时间',

`sts` char(1) DEFAULT '1' COMMENT '状态',

`cwxx` varchar(2000) DEFAULT NULL COMMENT '错误信息',

`sjzt` varchar(10) DEFAULT '1' COMMENT '数据状态',

PRIMARY KEY (`id`)

) ENGINE=MyISAM AUTO_INCREMENT=10000002 DEFAULT CHARSET=utf8 AVG_ROW_LENGTH=44 COMMENT='行政许可信息';

Oracle按不同时间分组统计的sql

如下表table1:

日期(exportDate)

数量(amount)

--------------

-----------

14-2月

-08

20

10-3月

-08

2

14-4月

-08

6

14-6月

-08

75

24-10月-09

23

14-11月-09

45

04-8月

-10

5

04-9月

-10

44

04-10月-10

88

注意:为了显示更直观,如下查询已皆按相应分组排序

1按年份分组

select

to_char(exportDate,'yyyy'),sum(amount)

from

table1

group

by

to_char(exportDate,'yyyy');

年份

数量

-----------------------------

2009

68

2010

137

2008

103

2按月份分组

select

to_char(exportDate,'yyyy-mm'),sum(amount)

from

table1

group

by

to_char(exportDate,'yyyy-mm')

order

by

to_char(exportDate,'yyyy-mm');

月份

数量

-----------------------------

2008-02

20

2008-03

2

2008-04

6

2008-06

75

2009-10

23

2009-11

45

2010-08

5

2010-09

44

2010-10

88

3按季度分组

select

to_char(exportDate,'yyyy-Q'),sum(amount)

from

table1

group

by

to_char(exportDate,'yyyy-Q')

order

by

to_char(exportDate,'yyyy-Q');

季度

数量

------------------------------

2008-1

22

2008-2

81

2009-4

68

2010-3

49

2010-4

88

4按周分组

select

to_char(exportDate,'yyyy-IW'),sum(amount)

from

table1

group

by

to_char(exportDate,'yyyy-IW')

order

by

to_char(exportDate,'yyyy-IW');

数量

------------------------------

2008-07

20

2008-11

2

2008-16

6

2008-24

75

2009-43

23

2009-46

45

2010-31

5

2010-35

44

2010-40

88

PS:Oracle按时间段分组统计

想要按时间段分组查询,首先要了解level,connect

by,oracle时间的加减

关于level这里不多说,我只写出一个查询语句:

----level

是一个伪例

select

level

from

dual

connect

by

level

<=10

---结果:

1

2

3

4

5

6

7

8

9

10

oracle时间的加减看看试一下以下sql语句就会知道:

select

sysdate

-1

from

dual

----结果减一天,也就24小时

select

sysdate-(1/2)

from

dual

-----结果减去半天,也就12小时

select

sysdate-(1/24)

from

dual

-----结果减去1

小时

select

sysdate-((1/24)/12)

from

dual

----结果减去5分钟

select

sydate-(level-1)

from

dual

connect

by

level<=10

---结果是10间隔1天的时间

下面是本次例子:

select

dt,

count(satisfy_degree)

as

num

from

T_DEMO

i

,

(select

sysdate

-

(level-1)

2

dt

from

dual

connect

by

level

<=

10)

d

where

isatisfy_degree='satisfy_1'

and

iinsert_time<dt

and

iinsert_time>

ddt-2

group

by

ddt

例子中的sysdate

-

(level-1)

2得到的是一个间隔是2天的时间

group

by

ddt

也就是两天的时间间隔分组查询

自己实现例子:

create

table

A_HY_LOCATE1

(

MOBILE_NO

VARCHAR2(32),

LOCATE_TYPE

NUMBER(4),

AREA_NO

VARCHAR2(32),

CREATED_TIME

DATE,

AREA_NAME

VARCHAR2(512),

);

select

(sysdate-13)-(level-1)/4

from

dual

connect

by

level<=34

--从第一条时间记录开始(sysdate-13)为表中的最早的日期,“34”出现的分组数(一天按每六个小时分组

就应该为4)

一下是按照每6个小时分组

select

mobile_no,area_name,max(created_time

),dt,

count()

as

num

from

a_hy_locate1

i

,

(select

(sysdate-13)-(level-1)/4

dt

from

dual

connect

by

level

<=

34)

d

where

ilocate_type

=

1

and

icreated_time<dt

and

icreated_time>

ddt-1/4

group

by

mobile_no,area_name,ddt

另外一个方法:

--按六小时分组

select

trunc(to_number(to_char(created_time,

'hh24'))

/

6),count()

from

t_test

where

created_time

>

trunc(sysdate

-

40)

group

by

trunc(to_number(to_char(created_time,

'hh24'))

/

6)

--按12小时分组

select

trunc(to_number(to_char(created_time,

'hh24'))

/

6),count()

from

t_test

where

created_time

>

trunc(sysdate

-

40)

group

by

trunc(to_number(to_char(created_time,

'hh24'))

/

6)

varchar2(50) 表示该字段类型为varchar2类型,长度为50,可以存单字节字符50个,如字母、数字等,可以存储双字节字符25个,如汉字。

varchar2是Oracle中特有的一种数据库类型,与varchar的区别在于

varchar 存贮为定长

varchar2 存贮为不定长。

即:如果定义了一个字段为varchar(10),那么存贮到这个字段的值,不管有没有10个字符,都存贮为10个字符长度,不足的部份补足空格。而如果定义为varchar2(10),那么按实际值来存贮,即字段值有多长存贮为多长,不补足空格。这样,在进行字段值的比较时,varchar2显然比 varchar字段简单且不易出错。另外,在进行存贮时,varchar2 也比varchar节约存贮空间。因此建议用varchar2来代替varchar类型。除非你能确定这个字段存贮内容总是那么长,那么varchar字段也是可以用的。

varchar2的最大长度是4000

以上就是关于mysql数据库实施怎么写…创建表的部分,不会用脚本,就用图形界面 *** 作的,然后要写报告了,数据库实全部的内容,包括:mysql数据库实施怎么写…创建表的部分,不会用脚本,就用图形界面 *** 作的,然后要写报告了,数据库实、Oracle数据库按时间进行分组统计数据的方法、数据库中字段类型为varchar时,它的长度如何理解等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9864945.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-02
下一篇 2023-05-02

发表评论

登录后才能评论

评论列表(0条)

保存