应用场景:将数据表TB_USER中字段NNDP的内容中为[sannanyinv]转换为[3男1女] 主要脚本:一个游标脚本+分割字符串函数+拼音转数字脚本 操作步骤如下: 1.创建类型 create or replace type splitTable is table of varchar2(100); 2.创建函数fn_splitString(功能是将字符串分割成多条记录)--测试语句select * from table(fn_splitString('ernanyinv','nan'))
如下:一张订单表多个字段关联用户表: 1.链表查询 SELECT cu.id AS 'id',cu.version AS 'version',cu.cid AS 'cid',cu.uid AS 'uid',cu.shopName AS 'shopName',cu.address AS 'address', cu.totalPrice AS 'totalPrice',cu.orderType AS 'orderType', cu.state AS 'state',cu.cCreateTime AS
#!/bin/bash #批量新建数据表 #删除`符号,具体原因我也没搞懂 for i in {1..30};do mysql 地址 -u账号 -p密码 -e "use 库名;CREATE TABLE ccms_order_test$i ( uni_order_id varchar(100) NOT NULL COMMENT '全渠道订单ID', tenant varchar(50) NOT NULL COMMENT '租户id', partner varchar(50) NOT NULL CO
案列: 想更新A表的name字段,由于失误,在写这个表的时候,这个字段没有写,发现的时候,已经写了一个多月的数据了.改了之后的过程,会正常的写这个字段, 可是已经写了的数据也不能铲了,重新计算. 好在A表的name是可以从B表通过code关联查出来的. 于是,就有了下面这句sql. update table_a a set a.name= (select bname from table_b b and a.name is null); ORACLE 实用案列
也许大家有时候会遇到需要将把数据库中的某张表的数据按照该表的某个字段分类输出,比如一张数据表area如下 我们需要将里面的area按照serialize字段进行分类输出,比如这种形式: areas serialize 阿蓝色,艾沙云 A 重庆森林,传承家园 C 红军楼小区,海员新村 H ......... 要以这种形式放映出来,于是可以这样做,使用mysql中的group_concat() .group by(点击)实现, select serialize,grou
需求: 往某数据库的某个表中新增一个字段(若该字段已存在,则不做操作:若该字段不存在,则新增) 百度了n久,没有符合要求的例子,只有参考加自己琢磨,最终终于给弄出来了,以下是几个版本的更迭 第一版: DELIMITER $$ CREATE PROCEDURE insert_column() BEGIN FROM information_schema.columns WHERE table_schema='ltivalley' AND table_name='t_luck' AND column_
1.查询 MySQL 的版本: SELECT VERSION(); 2.查询 MySQL 当前使用的字符集: SHOW VARIABLES LIKE '%character%'; 3.查询指定数据库的指定数据表的状态信息(db_test 是数据库,t_text 是数据表): SHOW TABLE STATUS FROM `db_test` LIKE '%t_text%'; 4.查看数据表的列信息: SHOW FULL COLUMNS FROM t_text; 5.修改数据表 t_text 的字符
1.删除没有默认值的列:alter table Test drop COLUMN BazaarType 2.删除有默认值的列:先删除约束(默认值)alter table Test DROP CONSTRAINT DF__Test__BazaarType__3C4ACB5F(alter table Test DROP COLUMN BazaarType 提示报错就是 DF__SheetTest__Attac__0F8D3381) 然后在删除列 alter table Test DROP COLUM