mysql> select * from fruit; +----+--------+-------+ | id | name | price | +----+--------+-------+ | 1 | apple | 0 | | 2 | banana | 0 | | 3 | orange | 0 | | 4 | mango | 0 | | 5 | pomelo | 0 | +----+--------+-------+ 5 rows in set (0.00 sec) 要求很简单,将上面f…
今天遇到了一个需求,我在一张表中新增了一个字段,因为这张表以前已经有很多数据了,这样对于以前的数据来说,新增的这个字段的值也就是为该字段的默认值,现在需要将新增的这个字段添加上数据,数据来源为同表的另一字段,本来以为sql会很复杂,结果一试,这样一行简单的sql就可以搞定: update tb_common_verification_tk set '新字段'='旧字段' 结语:实践出真知!…
sql语句 UPDATE tb_info SET org_id = 2170 WHERE org_id = 815…
AND create_time BETWEEN '2016-07-25 14:30:00' AND '2016-07-25 15:20:28'; AND create_time BETWEEN '2016-07-25 14:30:01' AND '2016-07-25 15:20:25';…
SELECT CONCAT( 'alter table ', table_name, ' MODIFY COLUMN ', column_name, ' float DEFAULT NULL;' ) AS col, TABLE_NAME, COLUMN_NAME, DATA_TYPE FROM INFORMATION_SCHEMA.columns a WHERE TABLE_SCHEMA = 'prod_db' -- 代表所在的数据库 AND data_type IN ('double') --…
修改表名 ALTER TABLE 原表名 RENAME TO 新表名; 一句SQL语句只能修改一张表 show tables; 1. SELECT CONCAT( 'ALTER TABLE ', table_name, ' RENAME TO db_', substring(table_name, ), ';' ) FROM information_schema. TABLES WHERE table_name LIKE 'ct%'; 批量复制一下到Notepad++中,只保留sql语句,再复制…
一.正式环境操作注意事项: .关闭应用访问或者设置数据库只读 mysql设为只读方法: 开启只读: mysql> show global variables like "%read_only%"; #查看相关参数,OFF为关,ON为开,默认为OFF mysql> flush tables with read lock; mysql> ; 关闭只读: mysql> unlock tables; mysql> ; mysql> show global v…
执行步骤 1.用concat批量生成修改表名的语句 SELECT CONCAT( 'ALTER TABLE ', table_name, ' RENAME TO ', ,locate('_postfix',table_name)),'_new_postfix',';' ) FROM information_schema.tables Where table_name LIKE '%_postfix'; 2.将生成的语句执行一遍即可完成修改 ————————————————————————————…
最近在做项目时,发现数据库的一些字段不能执行sql语句进行修改,仔细观察才发现,它是由其他字段运算结果所得.这样就不需程序员通过代码执行运算结果更新数据库,感觉很实用,而网上教材好像还挺少的,所以把教程给贴出来. 1.首先新建一个测试用例表,其中的RemainMoney则是运算后所得.注意它的数据类型不要设置,在计算列规范的公式中写上运算公式.如:([Money]-[UseMoney]),然后保存. 2.先向表中插入一条数据,然后再执行sql语句查询,RemainMoney字段的值就出来了. 相…
平时简单的一维数组或者简单的数组排序这里就不多作介绍,这里主要是针对平时做项目中的可能遇到的情况,根据多维数组中的其中一个排序.用到的php函数是:array_multisort. 思路:获取其中你需要排序的字段,作为一维数组arr1,后边会用来排序多维数组data.这里主要以二维数组为例,多维数组也是同样的思路. $data = array( array('price' => '500', 'count' => '40', 'level' => '1'), array('price'…
const info = { name: 'xiaobe', } const { name: nickName = '未知' } = info; 其中nickName是解构过程中新声明的一个变量,并且它的值和name一样. 而后面的=''则表示当name为undefined时,给name添加一个未知的值 注意!因为解构是一个强标准类型,所以如果值为null时,是不会赋予默认值的…
很多时候我们只需要一张表里某个字段的值,组成的数组 $Channel = D('channel');$channelList = $Channel->order('user_name')->getField("source", true);    //不带true只能查到一个值 echo json_encode($channelList); //输出 ["3333","2222","2301","1111…
#走过,试过的路 UPDATE information_schema.`SCHEMATA` SET DEFAULT_COLLATION_NAME='utf8_general_ci' WHERE DEFAULT_COLLATION_NAME<>'utf8_general_ci'; #————尝试使用update语句来修改,这是走不通的,报以下错误 没有权限. #错误代码: 1044#Access denied for user 'root'@'%' to database 'informatio…
$arr = []; $str = ''; for ($i=0; $i < 2660; ++$i) { $str .= " WHEN ".$i." THEN ".rand(0,50); $arr[] = $i; } //WHEN 1 THEN 3 $arr = implode(',',$arr); // var_dump($arr);die; $sql = "UPDATE `ez_deichmann_original_goods_temp` SET…
生成修改的语句 SELECT CONCAT('ALTER TABLE ',table_name,' ENGINE=InnoDB;') FROM information_schema.tables WHERE table_schema='ambari' AND ENGINE='MyISAM';…
直接贴码: SELECT a.*, concat( 'alter table ', a.TABLE_NAME, ' rename ge_', SUBSTR( a.TABLE_NAME FROM INSTR(a.TABLE_NAME, '_') + 1 ), ';' ) FROM information_schema.`TABLES` a WHERE a.TABLE_SCHEMA = 'geekweb'; 查询出结果,复制最后一列.然后跑一遍就好了…
1.dao层/** * 分页查询点卡集合信息 * @param tid 游戏类型编号 * @param gid 游戏编号 * @param searchInfo 包括(点卡名称,游戏名称,点卡面值,游戏类型名称) * @param index * @param pagesize * @return */List<Cards> searchList(@Param("tid") int tid, @Param("gid") int gid, @Param(&…
--  bo_project_info 为表名 SELECT concat( 'alter table ', 'bo_project_info', ' change column ', COLUMN_NAME, ' ', LOWER( COLUMN_NAME ), ' ', COLUMN_TYPE, ' comment \'', COLUMN_COMMENT, '\';' ) AS '修改脚本' FROM information_schema.COLUMNS WHERE TABLE_NAME =…
)=N'要修改的表名'; --修改所有以sl结尾的列名的小数位数为4位 select syscolumns.name into #t1 from syscolumns,systypes where syscolumns.xusertype = systypes.xusertype and syscolumns.id = object_id(@tname) and syscolumns.name like '%sl' and systypes.name='numeric'; name from #…
今天接到一个任务是需要把数据库的字符编码全部修改一下,写了以下修正用的SQL,修正顺序是   表字段 > 表 > 数据库. 表字段修复: #改变字段数据 SELECT TABLE_SCHEMA '数据库',TABLE_NAME '表',COLUMN_NAME '字段',CHARACTER_SET_NAME '原字符集',COLLATION_NAME '原排序规则',CONCAT('ALTER TABLE ', TABLE_SCHEMA,'.',TABLE_NAME, ' MODIFY COLU…
数据库表之前的引擎是MyISAM,影响事务操作,要改成Innodb引擎 查询表引擎 SELECT CONCAT(table_name,' ', engine) FROM information_schema.tables WHERE table_schema="表名" AND ENGINE="MyISAM"; 生成修改sql select CONCAT('alter table ',table_name,' engine=InnoDB;') FROM informa…
统一将字符字符集变成utf8_general_ci,已测试. DROP PROCEDURE IF EXISTS `chanageCharSet`; CREATE PROCEDURE `chanageCharSet`() BEGIN DECLARE done INT DEFAULT FALSE; ); ); ); ); ); DECLARE _Cur CURSOR FOR ( SELECT TABLE_SCHEMA, TABLE_NAME, COLUMN_NAME, COLUMN_TYPE FRO…
error_reporting(0); $old_pre = 'tdr_'; // 原表前缀 $new_pre = 'db_'; // 新表前缀 // 配置连接 $db = new mysqli('127.0.0.1', 'db_user', 'db_pass', 'db_name'); if ($db->connect_error) die('Connect Error (' . $db->connect_errno . ') ' . $db->connect_error); $que…
update odr_order_base INNER JOIN (select merchant_id,order_base_id from odr_order_commodity) b on odr_order_base.order_base_id = b.order_base_id set odr_order_base.merchant_id = b.merchant_id update odr_order_base_his a INNER JOIN (select merchant_id…
CONCAT(str1,str2,...)     返回结果为连接参数产生的字符串. 如有任何一个参数为NULL ,则返回值为 NULL. 或许有一个或多个参数. 如果所有参数均为非二进制字符串,则结果为非二进制字符串. 如果自变量中含有任一二进制字符串,则结果为一个二进制字符串.一个数字参数被转化为与之相等的二进制字符串格式:若要避免这种情况,可使用显式类型 cast, 例如: SELECT CONCAT(CAST(int_col AS CHAR), char_col) mysql> SELE…
由于mongodb数据库类似js的写法,所以即使数据库中新的列不存在也会自动创建 db.hospital.find().forEach( function(item){ db.hospital.update({_id:item._id},{$set:{location:[item.longitude,item.latitude]}},true) } )…
前言 之前遇到了一次这样的需求,当时没有记录,这一次又赶上了,简单的记录一下. 本文个人拙见,若有出入,请指出--来自菜的颤抖 场景 表A中存放了集装箱的信息,一个集装箱一条记录,表B中存放了对于集装箱操作的指令,一条指令包括多个集装箱箱号,通过分号;切割(TCIU2347687;XUTR3546865),现在的需求是,对于已经在指令表B中的集装箱,在查询表A时需要过滤掉. 很容易想到的是not in, 然而分号分割. 其次,not like,然而[Err] ORA-01427: 单行子查询返回…
update B set B.maildata =(select SUBSTRING(maildata,0,3) from basedata where basedata.cid = B.cid)+(select CONVERT(varchar, CAST(SUBSTRING(maildata,3,4) as int )+100) from basedata where basedata.cid = B.cid)+(select SUBSTRING(maildata,3+4,len(mailda…
并且第一个接口的返回值中部分参数得作为第二个接口的入参,所以做了如下shell验证 第一个接口返回的response body串: { "bizCode": "1", "bizDesc": "success", "item": [ { "age": "20", "name": "shaoshao" }, { "age&…
改变行底色: procedure TForm1.dggrideh1DrawColumnCell(Sender: TObject;const Rect: TRect; DataCol: Integer; Column: TColumnEh; State: TGridDrawState); begin if(adqry.FieldByName('status').AsBoolean) then begin dggrideh1.Canvas.Brush.Color:=clRed; //行底色变色 dg…