- 浏览: 1501833 次
- 性别:
- 来自: 深圳
-
文章分类
- 全部博客 (523)
- JAVA (334)
- J2EE (18)
- JSP (21)
- JavaScript (14)
- it life (2)
- mobile develop (4)
- UBUNTU (14)
- Algorithm (14)
- DataBase (56)
- Browser/Server (1)
- linux (6)
- fedora (2)
- CSS (1)
- AjAX (3)
- HTML5 (1)
- EJB (1)
- osworkflow (2)
- Java face (5)
- spring (4)
- ICE (1)
- webService (2)
- MongoDB (1)
- JavaThread (4)
- JavaCollections (3)
- Hibernate (2)
- JavaMail (1)
- JavaBasic (1)
- Cache (1)
- https (4)
- DOM4J (1)
- JDOM (0)
- Mybatis (1)
- JUNIT (1)
- eclipse (1)
- easyMock (2)
最新评论
-
yadongliang:
...
自己认为的一些技术点 -
yadongliang:
每次看你头像都看的荷尔蒙分泌失调
WebService的两种方式SOAP和REST比较 (转) -
yadongliang:
hollo 写道一直有这种感觉,盲目的跟风,确实有一些人为了潮 ...
WebService的两种方式SOAP和REST比较 (转) -
welss:
博主,JNative怎么调用dll中的这种方法: int ...
JNative调用DLL -
Java_Antelope:
session.setAttribute和session.getAttribute(
1.删除重复项, 只保留第一条
delete table t1 where t1.ID not in ( select min(t2.ID) from table t2 group by t2.ColName)
2.查找重复记录
select t1.ID, count(*) from table group by t1.ID having count(*) > 1 order by count(*) desc
3.导入数据时, 如果目标表存在主键且主键在源表中没有对应的字段时, 使用触发器+序列
create or replace trigger res_circuit_uuid_insert
before insert on table
for each row
begin
select SEQ_TABLE_ID.Nextval into :new.ID from dual;
end ;
4.导入数据(目标表已存在, 目标表没有主键或主键约束禁用)
insert into table2 t2
(
t2.col1, t2.col2, ...
)
select distinct
t1.col1, t1.col1, ...
from table1 t1;
5.通过查询直接生成一个新表(结构+数据)
create table new_table
as select * from old_table
nologging
6.通过查询直接生成一个新表(复制表结构)
(1).复制所有字段
create table new_table
as select * from old_table
where 1=2;
(2).复制部分字段
create table new_table
as select col1, col2
from old_table
nologging;
7.修改表结构
(1). 添加列
alter table tableName
ADD
( col1 col_type,
col2 date default sysdate
);
(2). 修改列
alter table tableName
MODIFY
(col1 new_col_type, --更改为新类型
col2 default null
);
(3).删除列
alter table department
DROP
(col1, col2...)
cascade constraints; --删除相关约束
(4).软删除(标记为 unused 状态);
alter table tableName
set UNUSED
(col1, col2)
cascade constraints;
(5).彻底删除
alter table tableName
drop unused columns;
8.删除表
(1).删除所有记录(适用于记录数量小的表)
delete from tableName;
(2).drop table tableName
create table new_table
as select * from old_table;
(3).(适用于大量记录的表)
truncate table tableName;
9.表重命名
rename old_tableName
to new_tableName
10.添加注释
(1). 给表添加注释
comment on table tableName
is
'这是一个新表...'
(2). 给列添加注释
comment on COLUMN
tableName.columnName is
'这是一个列'
11.字典表
<1>.用户和概要文件相关的数据字典视图
(1).dba_users
--DBA视图描述数据库中的所有用户
select * from dba_users db
db.username --用户名
db.user_id --用户ID
db.password --口令(加密)
db.account_status --账户状态:OPNE || EXPIRED || LOCKED
db.expiry_date --终止日期
db.default_tablespace --表空间
db.created --创建日期
(2).all_users
--all视图列出当前用户可以看见的用户,
--但不予描述, 即只列出 UserName, User_ID, Created(date)
select * from all_users
(3).user_users
--仅仅列出当前用户的信息
select * from user_users
(4).dba_profiles
--显示所有的概要文件的资源参数
--pro.profile: 概要文件名称
--pro.resource_name: 资源名称:如 password_grace_time
--pro.resource_type: 资源类型:如:password
--pro.limit: 是否限制
select * from dba_profiles pro
(5).user_password_limits
--通过概要文件为用户设置的口令资源参数视图
--resusece_name: 资源名称:failed_login_attempts
--limit:限制状态
select * from user_password_limits
<2>.权限与角色字典视图
(1).dba_col_privs
--DBA视图描述了数据库中的所有列对象的授权
select * from dba_col_privs pri
pri.grantee --用户或角色(因为权限可以直接赋予用户)
pri.owner --所有者
pri.table_name --(列所属表名称)
pri.column_name --列
pri.grantor --
pri.privilege --权限
pri.grantable
(2).user_col_privs
--当前用户的所有列对象的授权
(3).dba_tab_privs
--DBA视图描述了数据库中的所有对象的(非系统的)授权
select * from dba_tab_privs pr
pr.grantee --用户或角色(被授权者)
pr.owner --使用者
pr.table_name --表
pr.grantor --授权者
pr.privilege --权限
pr.grantable --是否table对象
(4).user_tab_privs
--当前用户被授予的所有 对象的(非系统)授权
--对象权限包括:privilege:select, delete, update....
select * from user_tab_privs
(5).user_sys_privs
--当前用户的所有系统权限
select * from user_sys_privs
--系统权限包括:
--: create role,rule, type, user, view, table, cluster, trigger
--: create library, session, synonym, trigger, sequence, procedure.
select * from user_sys_privs p1 where p1.privilege like 'CREATE%'
(6).dba_sys_privs
--dba的系统权限
select * from dba_sys_privs
(7).user_role_privs
--授予给当前用户的角色
--userName: 用户名
--granted_role: 被授予的角色
--admin_option: 此用户下的用户是否可以被继承此用户的角色
(8).role_sys_privs
--授予给角色的系统权限的信息
--role : name
--privilege: 权限
--amdin_option: 是否可以被继承
(9).role_tab_privs
--授予给角色的对象的(table)权限
--role:Name
--owner: user
--table_name:tableName
--column_name:
--privilege:alter, debuge, insert;;;;;
(10).session_privs
--用户当前启用的权限
(11).session_roles
--用户当前启用的角色
<3>.其他字典表
(1). 注释表
user_tab_comments
(2).软删除表
user_unused_col_tabs;
12.添加约束
(1).Not NULL
Alter table tableName
Modify column Not null;
相当于是更改列定义,故为 Modify
(2).Unique
Alter table tableName
Add Unique(col1, col2);
一个列只能定义一个唯一约束(名称)
(3).Check
Alter table tableName Add Constraint Check_Col1
Check(col1 betweetn 12 to 34);
不适当的数据类型上定义约束条件(如字符类型上定义数字范围)会报错
(4).Foreign Key
Alter table tableName Add Constraint new_FK
Foreing Key (col1) References
tableName2 (col2) on
Delete Set NULL;
说明: a: Delete Cascade: 删除子表中所有相关的记录
b: Delete Set NULL: 将所有相关记录的外键列的值设置为NULL
c: Delete No Action: 不进行任何操作,关联表没影响
d: 父表: tableName2; 子表: tableName
e: 外键不可重复定义(尽管可能名称不同)
13.激活,禁用, 验证约束
(1).激活 CHK_SEX 约束
Alter table tableName
Enable constraint to CHK_SEX;
(2).激活 Unique 约束
Alter table tableName
Enable Unique (col1);
(3).禁用约束 CHK_SEX
Alter table tableName
Disable constraint CHK_SEX;
(4).验证约束
Alter Table tableName
Enable Validate constraint CHK_SEX;
(5).非验证约束
Alter table tableName
Enable NoValidate constraint CHK_SEX;
14.删除约束
(1).删除名称 Chk_Sex约束
Alter table tableName Drop Contraint Chk_Sex;
(2).删除 Unique 约束
Alter table tableName drop unique (col1);
(3).删除外键 约束
Alter table tableName Drop primary key cascade;
说明: 加入 casecade表示删除主键时同时会删除 子表中的外键约束
(4).删除 Not NULL
Alter Table tableName modify col1 NULL;
15. 修改约束名
(1).alter table tableName rename constraint check_sex to chk_sex;
16.延迟执行约束
原因:有时必须得延迟某个约束
比如: 如果某个表有外键约束(子表), 当向此表插入一条数据时, 而此记录数据还没有相应的父表中插入;
因为约束是默认是立即执行的, 这时通不过外键约束, 插入到子表中的记录会被回退.
但是如果延迟些外键约束, 把给子表和父表插入记录的过程放在在一个事务中,
用户可以随便颠倒父子表的次序的插入记录
当提交事务时再执行外键约束.
e.g
alter table tableName
modify constraint FK_tableName
Initially Deferred;
SQL>Insert Into tablName (xx, xx) values (xx, xx);
SQL>Insert Into tableName2(xx, xx) values (xx, xx);
SQL>Commit;
OK!
17.前 n 行
where rownum <= num
18.触发器
create or replace trigger tr_emp_sal_comm
before update of sal, comm
or delete
on emp
for each row
when( old.job='salesman') --指定条件: 此触发器只针对销售部门有效
begin
case
when updating ( 'sal') then
if :NEW.sal < :OLD.sal then
Raise_application_error(-20001, '销售人员工资只能涨不能降');
end if;
when deleting then
Raise_application_error(-20003, '不能删除emp表的销售人员记录');
end case;
end;
19.过程
(1).定义过程
create or replace procedure query_emp
(v_no emp.impno%TYPE,
v_name out emp.ename%TYPE,
v_sal out emp.sal%TYPE
)
IS
e_sal_error exception;
begin
select ename, sal --给变量赋值
into v_name, v_sal
from emp where empon=v_no;
if v_sal <= 2500 then
DBMS_OUTPUT.PUT_LINE('该员工工资: '|| v_sal);
Raise e_sal_error; --捕获异常: 如果不符合条件都可以当作异常来对待
end if;
exception --抛出异常
when no_data_found then
dbms_output.put_line('没有该员工':'||v_no);
when e_sal_error then
dbms_output.put_line('该员工工资高于 2500了');
end query_emp;
(2).调用过程
set serveroutput on --开启输出
declare
v_a1 emp.ename%TYPE;
v_a2 emp.sal%TYPE;
BEGIN
--调用存储过程;
-- => 表示按名称 对应关系;注: 后面必须要有分号
query_emp(v_name => v_a1, v_sal => v_a2, v_no => 5678);
if v_a2 > 2500
dbms_output.put_line('工资高于2500')
end if;
End;
20.函数
(1)创建函数
函数与过程的区别
1.函数必须要有 return;
2.函数更侧重于数据相关;过程更侧重于常用操作相关;
create or replace function get_salary_by_deptno
(v_dept_no in emp_deptno%TYPE, --输入部门号
v_emp_cnt out number) --输出部门人数
return number
IS
v_sum number(10, 2); --返回指定部门的工资总和
begin
select sum(sal), count(*) into v_sum, v_emp_cnt from emp
where deptno=v_dept_no;
return v_sum;
end get_salary_by_deptno;
(2)调用函数
set serveroutput on
declare
v_a1 emp.deptno%TYPE;
v_a2 number;
v_sum number(10,2);
begin
v_sum := get_salary_by_deptno
(v_emp_cnt => v_a2, v_dept_no => 10);
if v_a2 =0 then --可直接使用 v_a2; 因为它是函数输出的;
DBMS_OUTPUT.PUT_LINE('该部门无人');
else
DBMS_OUTPUT.PUT_LINE('该部门工资总合: ' || v_sum || '人数: ' || va2 );
end if;
end;
21. Oracle客户端用户管理文件
(Oracle客户端安装目录)
C:\oracle\ora92\network\ADMIN\tnsnames
22.创建序列
create sequence SEQ_TABLE_ID
minvalue 1
maxvalue 999999
start with 10001
increment by 1
cache 20;
23.游标应用
create or replace procedure curor_check_wrong_cols is
begin
EXECUTE IMMEDIATE 'DELETE FROM result_table;
DECLARE
S_TABLENAME VARCHAR(100);
S_CHECK_VALUES VARCHAR(4000);
CURSOR C_FOR_TABLE IS
SELECT TABLE_NAME, NAME FROM table;
BEGIN
OPEN C_FOR_TABLE;
LOOP
FETCH C_FOR_TABLE
INTO S_TABLENAME;
EXIT WHEN C_FOR_TABLE%NOTFOUND;
S_CHECK_VALUES := 'INSERT INTO table_result (TABLE_NAME, ID, ERROR_ROWS_COUNT)
(SELECT ''' || S_TABLENAME || ''', ''', '1001', COUNT(*) FROM ' || S_TABLENAME ||
' WHERE col2 IS NULL)'; --NOT IN ( SELECT table2.col2 FROM table2 GROUP BY col2))';
EXECUTE IMMEDIATE S_CHECK_VALUES;
END LOOP;
S_CHECK_VALUES := 'DELETE FROM table_result WHERE ERROR_ROWS_COUNT < 1 ';
EXECUTE IMMEDIATE S_CHECK_VALUES;
END;
end curor_check_wrong_cols;
24. 利用 union 结合游标将 表1中的字段1, 字段2插入到 表2字段 1中.
create or replace procedure pro_imp_colName is
begin
DECLARE
col1 varchar(1000);
sqlstr VARCHAR(4000);
CURSOR C_FOR_TABLE IS
select distinct col1 from
(select distinct col1 from tableName union select distinct col2 from tableName
BEGIN
OPEN C_FOR_TABLE;
LOOP
FETCH C_FOR_TABLE
INTO col1;
EXIT WHEN C_FOR_TABLE%NOTFOUND;
sqlstr := 'INSERT INTO table2(col1,col2) values
( ''' || col1|| ''', 0)';
EXECUTE IMMEDIATE sqlstr;
END LOOP;
END;
end pro_imp_colName;
25.导入数据时屏蔽重复记录(从table1向table2导入数据)
create or replace trigger table2_col1_insert
after insert
on table1
for each row
declare
-- local variables here
col1Count integer;
begin
--调用存储过程判断 col1 字段是否有已经存在当前要插入的值.
col1_is_null(colName1 => :NEW.colName1, intcount => col1Count);
EXECUTE IMMEDIATE sqlstr;
if( col1Count =0) then
insert into table2
(col1, col2, col3)
values
(:NEW.col1, :NEW.col2,0);
end if;
end ;
--对应的存储过程
create or replace procedure col1_is_null
(colName1 in varchar, intcount out integer )
as
begin
select count(*) into intcount from table2 where col1=colName;
end ;
26. 创建3种类型的索引
创建索引过程:
1.创建索引时会对全表进行扫描
2.对索引列的数据进行排序 --原理
3.为索引分配存储空间
4.将索引的定义信息保存到数据字典中.
创建:
<1>. 创建标准(B树)索引:
条件: 如果在 where 条件子句中要经常引用 某列或某几列, 就应该基于这些列创建B树索引.
1.创建单列索引
create INDEX idx_table_col on table(colName)
PCTFREE 30
TABLESPACE tablespace_Index;
说明: pctfree 指定将来 insert 操作预留的空间.
因为插入新记录总会创引入新索引值进来.因此预留空间要求较大.
2.创建多列索引
create INDEX idx_table_col1_col2 on table(col1, col2)
pctfree 30
tablespace tablespace_index;
<2>.创建位图索引
条件: 某列上记录值的基数很小, 只是有限的几个固定值,如性别,婚姻状态等如果需要建立索引,
就应该建立位图索引.
1.单列位图索引
create bitmap index bmidx_table_col on table(colName);
<3>.创建函数索引.
条件: 当 where 子句中使用了函数和表达式时, 为这些函数和表达式建立函数索引后,
select 的速度会提高.
1. 创建函数索引
create Index funidx_col on table(col1+col2+col3*0.5)
查询下列语句时速度会加快:
select * from table where (col1+col2+col3*0.5) < 500;
2.创建函数索引2
create Index funidx_table_col on table Substr(col1, 1, 2)
compute statistics;
查询col1列的头两位时速度会明显加快
select * from table where Substr(col1, 1, 2) in ('12', '34');
27.更改,重命名,合并, 重建
(1).更改:
Alter Index indexName **;
(2).重命名:
Alter Index indexName RENAME TO indexName2;
(3).合并索引: (清除更新产生的磁片)
Alter Index indexName COALESCE;
(4).重建索引:(重新建立一个索引, 删除还来的索引, 但是各种参数不变);
Alter Index indexName REBUILD
TABLESPACE ANOTHER;
28.监视索引
(1).查询 V$object_usage, 了解索引的被监视情况
select index_name, monitoring, used, start_monitoring, end_monitoring
from V$OBJECT_USAGE;
结果:
未选定行
说明没有任何索引被监视.
(2).修改索引使之被监视.
Alter Index indexName MONITORING USAGE;
(3).再查询被监视情况:
结果:
indexName, yes, no, timeNow;
(4).执行查询后(利用索引)
再查询结果:
indexName, yes, yes, timeNow;
可见, usered=yes; 表示从开始监视以来索引已经被使用过了.
29.索引的空间控制
(1).分配索引空间
Alter index indexName ALLOCATE EXTENT(SIZE 100K);
(2).释放多余空间
Alter INDEX indexName DEALLOCATE UNUSED;
30.查看与删除索引
(1).查看
select index_name, index_type, tablespace_name, uniquesness, logging
from user_indexes
where table_name='tableName';
--DBA_INDEXES; --所有索引
--ALL_INDEXES;
--USER_INDEXES;
--DBA_IND_COLUMNS; --索引列
--ALL_IND_COLUMNS;
--USER_IND_COLUMNS;
(2).删除
drop INDEX indexName;
31.同义词
引入同义词原因:
在开发数据库应用程序时, 应该普遍遵守的规则是尽量避免直接引用表,视图或其他对象.
否则,当DBA改变了表的名称或者结构,就必须重新改变并编译应用程序.
因此需要为对象建立同义词.
建立对象条件:
1.重要的对象;
2.分布式系统;
3.名称长而复杂;
语法:
create [or replace] public Synonym synonym_name
for [schema.]ojbect;
ege:
create or replace SYNONYM syn_students
for students
使用同义词:
select * from syn_students;
insert into syn_students values (**, **, **,..);
32.序列
需求
1.主键, 外键;
2.流水号;
创建:
create Sequence sequence
[start with n1] --起始值
[increment by n2] --递增量
[{maxvlue n3 | nomaxvalue }] --最大值(如果没有指定最大值则为:1027)
[{minvlue n4 | nominvalue }] --最小值(同上:-1026)
[{cache n5 | nocache}] --预分配的序列个数,使用不完作废
[{cycle | nocycle}] --序列使用完后是否循环
[order]; --按顺序生成序列
ege;
create SEQUENCE Seq_id
Increment by 1
Start with 300
MaxVulue 999999999
MinVule 1
Cache 10
Order;
使用序列:
(1).下一个序列
sequence_name.nextval;
(2).当前序列
sequence_name.currval;
ege:
select * from sequence_name.currval from dual;
更改序列
Alter Sequence sequence
--同创建相同;
删除:
Drop Sequence sequence;
查看所有序列:
select * from user_sequence;
33. 视图
引入视图目的:
(1).提供各种数据表现形式
(2).提供某些数据的安全性
(3).隐藏数据的复杂性
(4).简化数据的查询语句
(5).执行特殊查询
(6).保存复杂查询
<1>.创建视图:
Create [Or Replace] [force] View [Schema.] view_name
[(col1, col2, ...)]
As select ...
[With Check Option] [Constraint constraint_name]
[Woth Read Only];
说明:
--force: 强制创建视图,不考虑基础表是否存在或是否有权限, 这样保证操作的独立性;
--With Check Option: 使用视图时,检查涉及的数据是否通过select子查询的约束条件,否则不允许操作。
ege:
创建一般视图
Create View v_table
as
select * from
tableName;
创建连接视图:
Create View v_table
as
select a.col1, a.col2, b.col1, b.col5
from table1 a, table2 b
where a.col1=b.col5
and a.col2 in (values1, values2);
创建复杂视图
Create View v_table
As
select col1, avg(col2), sum(col3), max(col4), min(col5)
from table
group by col1;
<2>.使用视图
1.select
select * from view_name;
2.DML操作
对于基础表为一张表的直接使用 DML语句
对于基础表为多张表的视图使用下列方法:
键保存表概念:
--如果连接视图中的一个基础表的键(主键,唯一键)在它的视图中仍然存在, 则称这个基础表为
键保存表(key-preserved)。键保存表中的主键在他的视图中仍然是主键。
即:子表为键保存表,父表为非键保存表;
原则:
1.一次只能对视图中的一个键保存表进行更新。
2.如果视图有 With Check Option选项
则不能对连接视图执行 DML 操作
<3>.修改视图:
由于视图只是一个虚表,更改只是更改它的定义。
使用下面方法会重新创建一个新的视图,但会保留原视图上的所有设置(如授权等)
Create or replace view v_table
<4>.删除视图
Drop View view_table
<5>.查看视图字典:
user_views;
34. 口令策略
--创建用于口令的概要文件(口令策略)
--此概要文件为系统自带的口令策略文件
create profile default limit
password_life_time 60 --60天内必须使用此口令
password_grace_time 10 --60天后的10天里必须更改此口令
password_reuse_time 1800 --1800天内不可重用此口令
password_reuse_max unlimited --下次使用此口令时中间要换口令无限次(也就是说:永远不再使用此口令)
password_login_attempts 3 --口令输入累计的失败次数, 3次后用户锁死此用户
password_lock_time 1 --锁死时间:1天
--系统自带的口令校验脚本
password_verify_function verify_function; --口令校验脚本(为一函数,名称为:verify_function)
--创建用户或修改用户时添加口令管理(default)
create user userName Profile default;
alter user userName2 profile default;
--锁定账户
Alter user userName Account Lock;
--解锁账户
Alter user userName Account UnLock;
35. ORACLE函数大全 (SQL中的单记录函数)
一. 字符
1.ASCII
返回与指定的字符对应的十进制数;
SQL> select ascii('A') A,ascii('a') a,ascii('0') zero,ascii(' ') space from dual;
A A ZERO SPACE
--------- --------- --------- ---------
65 97 48 32
2.CHR
给出整数,返回对应的字符;
SQL> select chr(54740) zhao,chr(65) chr65 from dual;
ZH C
-- -
赵 A
3.CONCAT
连接两个字符串;
SQL> select concat('010-','88888888')||'转23' 高乾竞电话 from dual;
高乾竞电话
----------------
010-88888888转23
4.INITCAP
返回字符串并将字符串的第一个字母变为大写;
SQL> select initcap('smith') upp from dual;
UPP
-----
Smith
5.INSTR(C1,C2,I,J)
在一个字符串中搜索指定的字符,返回发现指定的字符的位置;
C1 被搜索的字符串
C2 希望搜索的字符串
I 搜索的开始位置,默认为1
J 出现的位置,默认为1
SQL> select instr('oracle traning','ra',1,2) instring from dual;
INSTRING
---------
9
6.LENGTH
返回字符串的长度;
SQL> select name,length(name),addr,length(addr),sal,length(to_char(sal)) from gao.nchar_tst;
NAME LENGTH(NAME) ADDR LENGTH(ADDR) SAL LENGTH(TO_CHAR(SAL))
------ ------------ ---------------- ------------ --------- --------------------
高乾竞 3 北京市海锭区 6 9999.99 7
7.LOWER
返回字符串,并将所有的字符小写
SQL> select lower('AaBbCcDd')AaBbCcDd from dual;
AABBCCDD
--------
aabbccdd
8.UPPER
返回字符串,并将所有的字符大写
SQL> select upper('AaBbCcDd') upper from dual;
UPPER
--------
AABBCCDD
9.RPAD和LPAD(粘贴字符)
RPAD 在列的右边粘贴字符
LPAD 在列的左边粘贴字符
SQL> select lpad(rpad('gao',10,'*'),17,'*')from dual;
LPAD(RPAD('GAO',1
-----------------
*******gao*******
不够字符则用*来填满
10.LTRIM和RTRIM
LTRIM 删除左边出现的字符串
RTRIM 删除右边出现的字符串
SQL> select ltrim(rtrim(' gao qian jing ',' '),' ') from dual;
LTRIM(RTRIM('
-------------
gao qian jing
11.SUBSTR(string,start,count)
取子字符串,从start开始,取count个
SQL> select substr('13088888888',3,8) from dual;
SUBSTR('
--------
08888888
12.REPLACE('string','s1','s2')
string 希望被替换的字符或变量
s1 被替换的字符串
s2 要替换的字符串
SQL> select replace('he love you','he','i') from dual;
REPLACE('H
----------
i love you
13.SOUNDEX
返回一个与给定的字符串读音相同的字符串
SQL> create table table1(xm varchar(8));
SQL> insert into table1 values('weather');
SQL> insert into table1 values('wether');
SQL> insert into table1 values('gao');
SQL> select xm from table1 where soundex(xm)=soundex('weather');
XM
--------
weather
wether
14.TRIM('s' from 'string')
LEADING 剪掉前面的字符
TRAILING 剪掉后面的字符
如果不指定,默认为空格符
二.数字处理
15.ABS
返回指定值的绝对值
SQL> select abs(100),abs(-100) from dual;
ABS(100) ABS(-100)
--------- ---------
100 100
16.ACOS
给出反余弦的值
SQL> select acos(-1) from dual;
ACOS(-1)
---------
3.1415927
17.ASIN
给出反正弦的值
SQL> select asin(0.5) from dual;
ASIN(0.5)
---------
.52359878
18.ATAN
返回一个数字的反正切值
SQL> select atan(1) from dual;
ATAN(1)
---------
.78539816
19.CEIL
返回大于或等于给出数字的最小整数
SQL> select ceil(3.1415927) from dual;
CEIL(3.1415927)
---------------
4
20.COS
返回一个给定数字的余弦
SQL> select cos(-3.1415927) from dual;
COS(-3.1415927)
---------------
-1
21.COSH
返回一个数字反余弦值
SQL> select cosh(20) from dual;
COSH(20)
---------
242582598
22.EXP
返回一个数字e的n次方根
SQL> select exp(2),exp(1) from dual;
EXP(2) EXP(1)
--------- ---------
7.3890561 2.7182818
23.FLOOR
对给定的数字取整数
SQL> select floor(2345.67) from dual;
FLOOR(2345.67)
--------------
2345
24.LN
返回一个数字的对数值
SQL> select ln(1),ln(2),ln(2.7182818) from dual;
LN(1) LN(2) LN(2.7182818)
--------- --------- -------------
0 .69314718 .99999999
25.LOG(n1,n2)
返回一个以n1为底n2的对数
SQL> select log(2,1),log(2,4) from dual;
LOG(2,1) LOG(2,4)
--------- ---------
0 2
26.MOD(n1,n2)
返回一个n1除以n2的余数
SQL> select mod(10,3),mod(3,3),mod(2,3) from dual;
MOD(10,3) MOD(3,3) MOD(2,3)
--------- --------- ---------
1 0 2
27.POWER
返回n1的n2次方根
SQL> select power(2,10),power(3,3) from dual;
POWER(2,10) POWER(3,3)
----------- ----------
1024 27
28.ROUND和TRUNC
按照指定的精度进行舍入
SQL> select round(55.5),round(-55.4),trunc(55.5),trunc(-55.5) from dual;
ROUND(55.5) ROUND(-55.4) TRUNC(55.5) TRUNC(-55.5)
----------- ------------ ----------- ------------
56 -55 55 -55
29.SIGN
取数字n的符号,大于0返回1,小于0返回-1,等于0返回0
SQL> select sign(123),sign(-100),sign(0) from dual;
SIGN(123) SIGN(-100) SIGN(0)
--------- ---------- ---------
1 -1 0
30.SIN
返回一个数字的正弦值
SQL> select sin(1.57079) from dual;
SIN(1.57079)
------------
1
31.SIGH
返回双曲正弦的值
SQL> select sin(20),sinh(20) from dual;
SIN(20) SINH(20)
--------- ---------
.91294525 242582598
32.SQRT
返回数字n的根
SQL> select sqrt(64),sqrt(10) from dual;
SQRT(64) SQRT(10)
--------- ---------
8 3.1622777
33.TAN
返回数字的正切值
SQL> select tan(20),tan(10) from dual;
TAN(20) TAN(10)
--------- ---------
2.2371609 .64836083
34.TANH
返回数字n的双曲正切值
SQL> select tanh(20),tan(20) from dual;
TANH(20) TAN(20)
--------- ---------
1 2.2371609
35.TRUNC
按照指定的精度截取一个数
SQL> select trunc(124.1666,-2) trunc1,trunc(124.16666,2) from dual;
TRUNC1 TRUNC(124.16666,2)
--------- ------------------
100 124.16
三. 日期
36.ADD_MONTHS
增加或减去月份
SQL> select to_char(add_months(to_date('199912','yyyymm'),2),'yyyymm') from dual;
TO_CHA
------
200002
SQL> select to_char(add_months(to_date('199912','yyyymm'),-2),'yyyymm') from dual;
TO_CHA
------
199910
37.LAST_DAY
返回日期的最后一天
SQL> select to_char(sysdate,'yyyy.mm.dd'),to_char((sysdate)+1,'yyyy.mm.dd') from dual;
TO_CHAR(SY TO_CHAR((S
---------- ----------
2004.05.09 2004.05.10
SQL> select last_day(sysdate) from dual;
LAST_DAY(S
----------
31-5月 -04
38.MONTHS_BETWEEN(date2,date1)
给出date2-date1的月份
SQL> select months_between('19-12月-1999','19-3月-1999') mon_between from dual;
MON_BETWEEN
-----------
9
SQL>selectmonths_between(to_date('2000.05.20','yyyy.mm.dd'),to_date('2005.05.20','yyyy.mm.dd')) mon_betw from dual;
MON_BETW
---------
-60
39.NEW_TIME(date,'this','that')
给出在this时区=other时区的日期和时间
SQL> select to_char(sysdate,'yyyy.mm.dd hh24:mi:ss') bj_time,to_char(new_time
2 (sysdate,'PDT','GMT'),'yyyy.mm.dd hh24:mi:ss') los_angles from dual;
BJ_TIME LOS_ANGLES
------------------- -------------------
2004.05.09 11:05:32 2004.05.09 18:05:32
40.NEXT_DAY(date,'day')
给出日期date和星期x之后计算下一个星期的日期
SQL> select next_day('18-5月-2001','星期五') next_day from dual;
NEXT_DAY
----------
25-5月 -01
41.SYSDATE
用来得到系统的当前日期
SQL> select to_char(sysdate,'dd-mm-yyyy day') from dual;
TO_CHAR(SYSDATE,'
-----------------
09-05-2004 星期日
trunc(date,fmt)按照给出的要求将日期截断,如果fmt='mi'表示保留分,截断秒
SQL> select to_char(trunc(sysdate,'hh'),'yyyy.mm.dd hh24:mi:ss') hh,
2 to_char(trunc(sysdate,'mi'),'yyyy.mm.dd hh24:mi:ss') hhmm from dual;
HH HHMM
------------------- -------------------
2004.05.09 11:00:00 2004.05.09 11:17:00
42.CHARTOROWID
将字符数据类型转换为ROWID类型
SQL> select rowid,rowidtochar(rowid),ename from scott.emp;
ROWID ROWIDTOCHAR(ROWID) ENAME
------------------ ------------------ ----------
AAAAfKAACAAAAEqAAA AAAAfKAACAAAAEqAAA SMITH
AAAAfKAACAAAAEqAAB AAAAfKAACAAAAEqAAB ALLEN
AAAAfKAACAAAAEqAAC AAAAfKAACAAAAEqAAC WARD
AAAAfKAACAAAAEqAAD AAAAfKAACAAAAEqAAD JONES
43.CONVERT(c,dset,sset)
将源字符串 sset从一个语言字符集转换到另一个目的dset字符集
SQL> select convert('strutz','we8hp','f7dec') "conversion" from dual;
conver
------
strutz
44.HEXTORAW
将一个十六进制构成的字符串转换为二进制
45.RAWTOHEXT
将一个二进制构成的字符串转换为十六进制
46.ROWIDTOCHAR
将ROWID数据类型转换为字符类型
47.TO_CHAR(date,'format')
SQL> select to_char(sysdate,'yyyy/mm/dd hh24:mi:ss') from dual;
TO_CHAR(SYSDATE,'YY
-------------------
2004/05/09 21:14:41
48.TO_DATE(string,'format')
将字符串转化为ORACLE中的一个日期
49.TO_MULTI_BYTE
将字符串中的单字节字符转化为多字节字符
SQL> select to_multi_byte('高') from dual;
TO
--
高
50.TO_NUMBER
将给出的字符转换为数字
SQL> select to_number('1999') year from dual;
YEAR
---------
1999
四. 其他
51.BFILENAME(dir,file)
指定一个外部二进制文件
SQL>insert into file_tb1 values(bfilename('lob_dir1','image1.gif'));
52.CONVERT('x','desc','source')
将x字段或变量的源source转换为desc
SQL> select sid,serial#,username,decode(command,
2 0,'none',
3 2,'insert',
4 3,
5 'select',
6 6,'update',
7 7,'delete',
8 8,'drop',
9 'other') cmd from v$session where type!='background';
SID SERIAL# USERNAME CMD
--------- --------- ------------------------------ ------
1 1 none
2 1 none
3 1 none
4 1 none
5 1 none
6 1 none
7 1275 none
8 1275 none
9 20 GAO select
10 40 GAO none
53.DUMP(s,fmt,start,length)
DUMP函数以fmt指定的内部数字格式返回一个VARCHAR2类型的值
SQL> col global_name for a30
SQL> col dump_string for a50
SQL> set lin 200
SQL> select global_name,dump(global_name,1017,8,5) dump_string from global_name;
GLOBAL_NAME DUMP_STRING
------------------------------ --------------------------------------------------
ORACLE.WORLD Typ=1 Len=12 CharacterSet=ZHS16GBK: W,O,R,L,D
54.EMPTY_BLOB()和EMPTY_CLOB()
这两个函数都是用来对大数据类型字段进行初始化操作的函数
55.GREATEST
返回一组表达式中的最大值,即比较字符的编码大小.
SQL> select greatest('AA','AB','AC') from dual;
GR
--
AC
SQL> select greatest('啊','安','天') from dual;
GR
--
天
56.LEAST
返回一组表达式中的最小值
SQL> select least('啊','安','天') from dual;
LE
--
啊
57.UID
返回标识当前用户的唯一整数
SQL> show user
USER 为"GAO"
SQL> select username,user_id from dba_users where user_id=uid;
USERNAME USER_ID
------------------------------ ---------
GAO 25
58.USER
返回当前用户的名字
SQL> select user from dual;
USER
------------------------------
GAO
59.USEREVN
返回当前用户环境的信息,opt可以是:
ENTRYID,SESSIONID,TERMINAL,ISDBA,LABLE,LANGUAGE,CLIENT_INFO,LANG,VSIZE
ISDBA 查看当前用户是否是DBA如果是则返回true
SQL> select userenv('isdba') from dual;
USEREN
------
FALSE
SQL> select userenv('isdba') from dual;
USEREN
------
TRUE
SESSION
返回会话标志
SQL> select userenv('sessionid') from dual;
USERENV('SESSIONID')
--------------------
152
ENTRYID
返回会话人口标志
SQL> select userenv('entryid') from dual;
USERENV('ENTRYID')
------------------
0
INSTANCE
返回当前INSTANCE的标志
SQL> select userenv('instance') from dual;
USERENV('INSTANCE')
-------------------
1
LANGUAGE
返回当前环境变量
SQL> select userenv('language') from dual;
USERENV('LANGUAGE')
----------------------------------------------------
SIMPLIFIED CHINESE_CHINA.ZHS16GBK
LANG
返回当前环境的语言的缩写
SQL> select userenv('lang') from dual;
USERENV('LANG')
----------------------------------------------------
ZHS
TERMINAL
返回用户的终端或机器的标志
SQL> select userenv('terminal') from dual;
USERENV('TERMINA
----------------
GAO
VSIZE(X)
返回X的大小(字节)数
SQL> select vsize(user),user from dual;
VSIZE(USER) USER
----------- ------------------------------
6 SYSTEM
60.AVG(DISTINCT|ALL)
all表示对所有的值求平均值,distinct只对不同的值求平均值
SQLWKS> create table table3(xm varchar(8),sal number(7,2));
语句已处理。
SQLWKS> insert into table3 values('gao',1111.11);
SQLWKS> insert into table3 values('gao',1111.11);
SQLWKS> insert into table3 values('zhu',5555.55);
SQLWKS> commit;
SQL> select avg(distinct sal) from gao.table3;
AVG(DISTINCTSAL)
----------------
3333.33
SQL> select avg(all sal) from gao.table3;
AVG(ALLSAL)
-----------
2592.59
61.MAX(DISTINCT|ALL)
求最大值,ALL表示对所有的值求最大值,DISTINCT表示对不同的值求最大值,相同的只取一次
SQL> select max(distinct sal) from scott.emp;
MAX(DISTINCTSAL)
----------------
5000
62.MIN(DISTINCT|ALL)
求最小值,ALL表示对所有的值求最小值,DISTINCT表示对不同的值求最小值,相同的只取一次
SQL> select min(all sal) from gao.table3;
MIN(ALLSAL)
-----------
1111.11
63.STDDEV(distinct|all)
求标准差,ALL表示对所有的值求标准差,DISTINCT表示只对不同的值求标准差
SQL> select stddev(sal) from scott.emp;
STDDEV(SAL)
-----------
1182.5032
SQL> select stddev(distinct sal) from scott.emp;
STDDEV(DISTINCTSAL)
-------------------
1229.951
64.VARIANCE(DISTINCT|ALL)
求协方差
SQL> select variance(sal) from scott.emp;
VARIANCE(SAL)
-------------
1398313.9
65.GROUP BY
主要用来对一组数进行统计
SQL> select deptno,count(*),sum(sal) from scott.emp group by deptno;
DEPTNO COUNT(*) SUM(SAL)
--------- --------- ---------
10 3 8750
20 5 10875
30 6 9400
66.HAVING
对分组统计再加限制条件
SQL> select deptno,count(*),sum(sal) from scott.emp group by deptno having count(*)>=5;
DEPTNO COUNT(*) SUM(SAL)
--------- --------- ---------
20 5 10875
30 6 9400
SQL> select deptno,count(*),sum(sal) from scott.emp having count(*)>=5 group by deptno ;
DEPTNO COUNT(*) SUM(SAL)
--------- --------- ---------
20 5 10875
30 6 9400
67.ORDER BY
用于对查询到的结果进行排序输出
SQL> select deptno,ename,sal from scott.emp order by deptno,sal desc;
DEPTNO ENAME SAL
--------- ---------- ---------
10 KING 5000
10 CLARK 2450
10 MILLER 1300
20 SCOTT 3000
20 FORD 3000
20 JONES 2975
20 ADAMS 1100
20 SMITH 800
30 BLAKE 2850
30 ALLEN 1600
30 TURNER 1500
30 WARD 1250
30 MARTIN 1250
30 JAMES 950
35. 带参数的SQL
OracleParameter parm = new OracleParameter(":unknown" , OracleType.VarChar);
parm.Value = "123";
dbCmd.CommandText = "select colName from table where col==:unknown ";
参数数组:
OracleParameter[] parm = {
new OracleParameter(":cityID", OracleType.Int32),
new OracleParameter(":cityName",OracleType.Varchar)
};
parm[0].Value = "401";
parm[1].Value = "ACB";
36. Oracel存储过程中返回数据集(转)
(1).建立包
CREATE OR REPLACE PACKAGE TEST.PKG_TEST IS
TYPE MYCURSOR IS REF CURSOR;
PROCEDURE GET_DEC_BILL_LIST(cur_OUT OUT MYCURSOR);
END;
(2).游标生成数据集
CREATE OR REPLACE PACKAGE BODY TEST.PKG_TEST IS
PROCEDURE GET_DEC_BILL_LIST(cur_OUT OUT MYCURSOR) AS
BEGIN
OPEN cur_OUT FOR SELECT * FROM ALL_TABLES WHERE OWNER='SYS';
END;
END;
不断更新中..........
发表评论
-
sql 统计类语句
2014-03-17 16:59 12191、统计每月的成交量,按照逆序排序(2013年以来的每月销量, ... -
Jdbc 操作Oracle CLOB字段
2013-01-08 22:10 4508//这个适用于oracle10,11,以前oracle9操作C ... -
SQL重复记录处理(查找,过滤,删除)
2012-12-30 23:43 4840HZT表结构 ID int Title nvarchar( ... -
sql 如何过滤重复记录
2012-12-29 21:37 2461请各位大侠帮忙了 问题1:对于以下几个记录 ID 123456 ... -
Mysql 触发器和存储过程
2012-09-17 12:34 10011、首先建表: create table tababin( i ... -
Sql ACID
2012-09-12 17:57 940http://nathanchen.github.com/Re ... -
Oracle 表分区学习
2012-09-12 17:52 865http://love-flying-snow.iteye.c ... -
Oracle表分区
2012-09-12 17:19 1373废话少说,直接讲分区语法。 Oracle表分区分为四种:范围分 ... -
MYSQL中 ENUM 类型的详细解释
2012-03-12 23:30 2431ENUM 类型 ENUM 是一个字 ... -
Mysql 字段数据类型/长度及表类型详细说明
2012-03-12 23:20 15038一、MySQL 字段数据类型/长度 1、数值类型 列类型 ... -
MySQL中的datetime与timestamp比较
2012-03-04 19:30 1232相同 显示 TIMESTAMP列的显示格式与DATETI ... -
mysql 存储过程例子
2011-08-21 01:35 4017mysql 存储过程例子(当前我使用的是mysql 5.5) ... -
Oracle Cursor介绍
2011-08-21 00:54 1062一 概念 游标是SQL的一个内存工作区,由系统或用户以变量的 ... -
oracle 游标
2011-08-20 14:09 10851、隐式游标 实例1、用sql%found 相当于sql.fo ... -
关于DB2存储过程的几个小实例
2011-08-20 03:21 2940================ CREATE PROCED ... -
oracle 游标遍历%rowtype中的记录
2011-08-20 01:49 7498那么我们使用Oracle游标 游标分为:静态游标和引用游标( ... -
oracle concat
2011-08-19 23:26 1230oracle 连接字符串: 连接两个字符串 sel ... -
oracle 存储过程
2011-08-19 21:55 1005oracle的for循环,commit放在不同的位置,一个是每 ... -
sql 删除重复的记录
2011-08-19 16:32 969通过建立临时表删除: SQL>create ta ... -
DB2 分页
2011-07-25 01:59 1546//db.jsp <%@ page langua ...
相关推荐
球类物体检测系统源码分享[一条龙教学YOLOV8标注好的数据集一键训练_70+全套改进创新点发刊_Web前端展示]
交通信号灯检测系统源码分享
基站设备检测系统源码分享[一条龙教学YOLOV8标注好的数据集一键训练_70+全套改进创新点发刊_Web前端展示]
人脸活体检测系统源码分享[一条龙教学YOLOV8标注好的数据集一键训练_70+全套改进创新点发刊_Web前端展示]
这款资源系统是一款基于PHP和MySQL开发的内容管理系统(CMS),广泛应用于资源分享、下载站点的搭建。该系统以简洁、高效、易用为特点,适合快速构建资源类网站。 核心功能 资源管理:支持多种资源类型(如软件、文档、视频等)的上传、分类、展示和下载。 用户系统:提供用户注册、登录、权限管理等功能,支持用户积分、等级制度。 SEO优化:内置SEO功能,支持自定义URL、关键词、描述等,提升搜索引擎排名。 模板管理:支持多套模板切换,用户可以根据需求自定义网站外观。 插件扩展:系统支持插件机制,用户可以通过安装插件扩展功能,如支付接口、社交分享等。 安全机制:内置防SQL注入、XSS攻击等安全机制,保障系统安全。 适用场景: 资源下载站 软件分享平台 文档分享站点 视频资源站
内容: 本研究探讨了巴西北部一个红树林边缘河口中的溶解有机物(DOM)动态,将DOM组成与其形成地点的氧化还原条件联系起来。通过结合分子分析与营养盐和微量元素数据,我们强调了难降解DOM的外流作为沿海碳储存的重要贡献者,并提出了一种新颖的分子指数(ISuP),用于区分复杂沿海生态系统中的DOM来源。该数据集包括由超高质量分辨率质谱(傅里叶变换离子回旋共振质谱仪,FT-ICR-MS)获得的溶解有机物的分子数据、从FT-ICR-MS数据计算出的分子指数(ISuP 和 ITerr),以及环境数据,包括溶解有机碳(DOC)、营养盐(硝酸盐和磷酸盐)和微量元素(铁、锰、钡)的数据。水样采集自巴西北部帕拉州布拉甘萨附近的一个红树林边缘河口。此研究对于理解沿海生态系统中碳循环及其在全球变化背景下所扮演的角色具有重要意义。"访问数据集" ()以获取更多详情。
2024免费毕业设计成品,包括源码+数据库+往届论文资料 启动教程:https://www.bilibili.com/video/BV11ktveuE2d 讲解视频:https://www.bilibili.com/video/BV1YfkHYwEME 二次开发教程:https://www.bilibili.com/video/BV1Cw2rY1ErC
2024免费毕业设计成品,包括源码+数据库+往届论文资料 启动教程:https://www.bilibili.com/video/BV11ktveuE2d 讲解视频:https://www.bilibili.com/video/BV1YfkHYwEME 二次开发教程:https://www.bilibili.com/video/BV1Cw2rY1ErC
火车车厢检测系统源码分享
智慧社区的建设背景与需求 智慧社区的建设源于“互联网+”时代的呼唤,是业主刚需促成的社区变革。随着市场化进程的加速,传统社区面临着运营业务少、建设成本高、维护难度大、业务不精、增值服务少、无数据沉淀、运营模式单一等问题。而新技术如大数据、云计算的崛起,为人与人、人与物、物与物之间的无界限连接提供了可能,推动了智慧社区的发展。业主对于智能家居、可视对讲、智能安防、社区消费、在线物业、社区互动等体验式社区的需求,也成为了购房的刚需。智慧社区的建设,旨在通过一站式服务提升楼盘品质及品牌溢价,简化物业系统,增强管理效率,降低建设及维护成本,为业主提供便捷、舒适的生活服务,并转型为服务提供商。 智慧社区的核心子系统与功能 智慧社区的建设依赖于多个核心子系统,包括视频监控、可视对讲、一卡通、背景音乐、信息发布等。视频监控子系统提供了全方位的安全保障,通过密码加密传输、数据库安全、云存储等技术,实现了录像的安全存储和智能分析,如全景监控、人员异常活动检测等功能。可视对讲子系统不仅实现了基本的对讲功能,还加入了人脸识别、远程开门、信息发布等智能化功能。一卡通子系统涵盖了门禁、考勤、消费、访客、梯控、巡更等多个应用场景,实现了统一数据库和身份认证体系下的便捷管理。此外,背景音乐子系统提供了定时广播、实时广播、事件联动等功能,而信息发布子系统则支持文字、图片、即时和任务播放,以及分组管理,为社区内的信息传播提供了便利。智慧社区还注重家居的智能化,通过情景模式预设、一键自动控制、系统传感器和逻辑功能自动运行等任务,以及兼容常规电器设备,为业主提供了舒适、健康、便利的居住环境。 智慧社区的运营方案与未来展望 智慧社区的运营方案包括开放的云平台、智能终端和丰富应用,旨在打造智慧社区行业生态圈。云平台的建设实现了海量信息存储、强大的计算能力,以及统一部署、统一服务、统一用户体验和降低成本的目标。交互客服平台的打造,通过公司门户网站、小区客服网站、业主个人中心等多渠道,建立了物业与业主之间的信任关系。智慧社区还提供了多方位的多媒体广告,搭建了用户与经营者之间的桥梁,增加了物业收入。同时,智慧社区还注重公私车位运营等增值业务,通过手机APP下单、确认租赁等方式,实现了车位的有效利用和物业收入的增加。未来,智慧社区将继续深化智能化建设,拓展更多应用场景,为业主提供更加便捷、舒适、智能的生活体验。
棒球运动物体检测系统源码分享[一条龙教学YOLOV8标注好的数据集一键训练_70+全套改进创新点发刊_Web前端展示]
2024免费毕业设计成品,包括源码+数据库+往届论文资料 启动教程:https://www.bilibili.com/video/BV11ktveuE2d 讲解视频:https://www.bilibili.com/video/BV1YfkHYwEME 二次开发教程:https://www.bilibili.com/video/BV1Cw2rY1ErC
去年写的学生点名系统,使用c#的xaml做的动画,使用账密登录,支持背景图修改,读取姓名,点名倒计时,背景音乐,手动停止,速度调整等。
二维码与条形码检测系统源码分享[一条龙教学YOLOV8标注好的数据集一键训练_70+全套改进创新点发刊_Web前端展示]
内容概要:文章主要介绍了利用决策树和朴素贝叶斯算法对鸢尾花进行分类的研究过程。文中首先概述了研究背景和意义,指出了鸢尾花数据集作为经典机器学习数据集的重要性,以及通过此数据集可以帮助理解和优化算法性能。研究内容涵盖了算法的基本原理、技术细节,如信息熵、信息增益及其比率,还包括对模型进行剪枝、性能评估等多项步骤。作者通过一系列实验证明,这两类方法能够在不同程度上有效地分辨三种不同品种的鸢尾花,并针对各自的优势与局限性给出了具体的分析与改进建议。 适用人群:适用于正在接触或学习机器学习入门级别的学生以及相关技术人员,尤其是那些希望加深对于分类算法尤其是决策树与朴素贝叶斯这两种经典算法了解的人群。 使用场景及目标:该研究旨在通过对鸢尾花数据集的实际操作,让学生或从业者掌握决策树和朴素贝叶斯在实际案例中的构建方法。同时培养他们对分类问题建模的兴趣和技能,提高他们在选择适当算法应对不同类型问题的能力。 其他说明:除了详细讲解两个核心主题外,文档还提及了一些关于数据处理(包括但不限于预处理和特征工程)、实验配置以及结果解读方面的基础知识。这对于初学者来说是非常有用的参考资料。值得注意的是,虽然文中强调决策树算法的优点,但也提到了诸如过拟合之类的潜在缺陷,并提出了相应的解决方案。总的来说,本文不仅有助于读者建立起对于两类主流分类算法的理解,也为未来的研究工作奠定了坚实的基础。
模拟军事目标检测系统源码分享[一条龙教学YOLOV8标注好的数据集一键训练_70+全套改进创新点发刊_Web前端展示]
内容: 该研究探讨了三种典型水样中的溶解有机物(DOM)的独特色谱行为,这些水样分别代表了沿海DOM、海洋表面DOM和海洋难降解DOM。在RV Polarstern的ANT XXII/2航次期间(站位PS67/006-130,纬度-67.5633,经度-55.3448),使用采水器从威德尔海表面(30米深度,海洋表面DOM)和深水(1356米深度,难降解DOM)采集水样,并在其他地方有所描述(El Naggar等人,2007;Koch等人,2008)。实验过程中,将160升海水通过0.2微米滤芯过滤,酸化至pH 2,并泵入60毫升固相萃取柱(PPL,5克)。DOM用40毫升甲醇洗脱后,在-18°C下保存。沿海DOM通常从南北海(纬度54.1447,经度7.8711)提取,并作为实验室内部标准使用。海水经过0.2微米PTFE(Whatman)过滤,酸化至pH 2后,也采用PPL萃取柱进行处理。 数据集包含4组数据,详细信息可访问提供的链接获取。
5f3074e9b14c8a0069729d6464d15e35.PNG
花卉识别系统源码分享
重点:所有项目均附赠详尽的SQL文件,这一细节的处理,让我们的项目相比其他博主的作品,严谨性提升了不止一个量级!更重要的是,所有项目源码均经过我亲自的严格测试与验证,确保能够无障碍地正常运行。 1.项目适用场景:本项目特别适用于计算机领域的毕业设计课题、课程作业等场合。对于计算机科学与技术等相关专业的学生而言,这些项目无疑是一个绝佳的选择,既能满足学术要求,又能锻炼实际操作能力。 2.超值福利:所有定价为9.9元的项目,均包含完整的SQL文件。如需远程部署可随时联系我,我将竭诚为您提供满意的服务。在此,也想对一直以来支持我的朋友们表示由衷的感谢,你们的支持是我不断前行的动力! 3.求关注:如果觉得我的项目对你有帮助,请别忘了点个关注哦!你的支持对我意义重大,也是我持续分享优质资源的动力源泉。再次感谢大家的支持与厚爱! 4.资源详情:https://blog.csdn.net/2301_78888169/article/details/141651888 更多关于项目的详细信息与精彩内容,请访问我的CSDN博客!