【SQL常用语句或函数】

SQL常用语句或函数

–查询字符串的长度
select length(‘北京市东城区王府井大街1188799号’) from dual;
–查询当前时间
values current date
–查询去重复
select后面 dis
–查询结果判断返回内容
decode((CSIPAG.GETRECOMFLAG(r.AGENTCODE,r.RECOMAGENTCODE)),‘Y’,‘是’,‘否’)
–查询结果拼接在一起
select Name_CSIP||‘(’||AgentCuscode||‘)’,ManageCom from
–两个查询结果进行拼接
UNION all 加”all“后全显示 不加后会去重
–查询判断
select (CASE WHEN CSIPAG.GETRECOMFLAG(r.AGENTCODE,r.RECOMAGENTCODE,‘csip’) = ‘N’ THEN '否’WHEN CSIPAG.GETRECOMFLAG(r.AGENTCODE,r.RECOMAGENTCODE) = ‘Y’ THEN ‘是’ END) from LARECOMRELATION r
select case when count(1) > 0 then ‘Y’ else ‘N’ end from laagent where agentcode = ‘X988765’ and agentstate = ‘01’ and branchtype = ‘AG’

–NVL
NVL(表达式1,表达式2)如果表达式1为空值,NVL返回值为表达式2的值,否则返回表达式1的值。 该函数的目的是把一个空值(null)转换成一个实际的值。其表达式的值可以是数字型、字符型和日期型。但是表达式1和表达式2的数据类型必须为同一个类型。

–表中添加字段
alter table [表名] add [字段名] [column_type]
–修改表字段类型
alter table [表名] alter column [字段名] set data type [column_type]
alter table laagent alter PROXYNO set data type varchar(100)
–删除字段
alter table [表名] drop column [字段名]
–表中给字段加注解
comment on column [表名].[字段名] is ‘注释内容’;

select * from laagent where OutWorkDate is not null and IDNOTYPE=‘0’ and IDNO=‘11010119800410037X’ and AgentState in(‘03’) and branchtype = ‘AG’ order by MAKEDATE desc, MAKETIME desc fetch first 1 rows only

–设置自增
1 )当想将表中一列修改为自动增长时,可用下面命令:
Alter table

alter column set generated always as identity (start with 1,increment by 1)
上面命令是在改一表中列的属性时,在网上找到的很有用。

2)当修改表中一列自动增长的开始值时,可用下面的命令:
ALTER TABLE <talbe_name> ALTER COLUMN RESTART WITH 18;

**db2创建主键 **
1、需要把新增的主键字段设置为非空
ALTER TABLE TabName ALTER COLUMNNAME SET NOT NULL;

2、删除之前的表主键
ALTER TABLE LRIndexInfo DROP PRIMARY KEY;
3、表重组
CALL sysproc.admin_cmd(‘reorg table LRIndexInfo’);

4、增加表主键
alter table LRIndexInfo add constraint PK_my_table PRIMARY KEY(WAGENO,INDEXTYPE,BASECODE,INDEXCODE,AGENTCODE,MANAGECOM);

alter table LRTermToLoadDataC drop primary key;
alter table LRTermToLoadDataC add primary key(BAKMONTH, TYPE, ITEMCODE, LOADCODE, MANAGECOM);
CALL sysproc.admin_cmd(‘reorg table LRTermToLoadDataC’);

**–四舍五入 保留2位 **
CAST(ROUND(值,2) AS DECIMAL(10,2))

–加减月
TO_CHAR(add_months(to_date(年月,‘yyyymm’),加减月份),‘yyyymm’)

–去重
DISTINCT

截取
SUBSTR(字符串, 2, 1)

两数取大
greatest(1,2)

  • 20
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值