比如字段sid中用'|'分割的一些字符   a|b|c|d,需要通过sql查询出字符的个数是4. 可以使用如下脚本: SELECT LEN(sid)-LEN(REPLACE(sid,'|',''))+1 'NUM1',COUNT(1)'NUM2' FROM dbo.FM_PurchaseRequest WHERE ISNULL(sid,'')<>'' GROUP BY LEN(sid)-LEN(REPLACE(sid,'|',''))+1 ORDER BY 附件个数 DESC…
mysql 中取得汉字字段的各汉字首字母 这个转载于http://blog.csdn.net/lky5387/article/details/11973721 DELIMITER ;;CREATE  FUNCTION `getPY`(in_string VARCHAR(65534)) RETURNS mediumtext CHARSET utf8BEGINDECLARE tmp_str VARCHAR(65534) charset gbk DEFAULT '' ; #截取字符串,每次做截取后的字…
C#更新SQLServer中的TimeStamp字段(时间戳) 分类: C#2012-10-24 15:10 1878人阅读 评论(0) 收藏 举报 public partial class Form1 : Form    {        private SqlConnection mCnn = null;        private long TimeStampValue; public Form1()        {            InitializeComponent(); …
sqlserver中怎么查询字段为空的记录的两种方法: 详细介绍请查看全文:https://cnblogs.com/qianzf/ 原文博客的链接地址:https://cnblogs.com/qzf/…
本文主要记录如何在MySQL数据库中,将一个字符串分割成多条数据显示. 外键有时是以字符串的形式存储,例如 12,13,14 这种,如果以这种形式存储,则不能直接与其他表关联查询,此时就需要将该字段的值分割再关联查询. 下图是一条测试数据,表名为 test 想达到的效果如下图所示 为实现功能,需要新建一个表,该表只有一个字段,字段命名为id,表名称为 sequence 表中需要预先置入一些值,主要是便于分割判断,一般该数值取决于要分割字符串的长度,但长度 100 应该是够了. 下面分享两种可以实…
假设有表如下: 商品名称 耐克/DS001 安踏/AT002 阿迪达斯/AD009 使用SQL将[商品名称]字段按照分隔符‘/’进行分割后实现以下效果: 品牌 商品代码 耐克 DS001 安踏 AT002 阿迪达斯 AT009 SQL语句: ,),,) FROM Products 或 ) , , , '') FROM Products;…
经常要保留小数,在程序中计算太麻烦了,还要转换操作.直接在数据库中操作来得方便. 把数据类型定义成decimal/numeric类型,小数位看需要随意设,除数与被除数必须要有一个为decimal/numeric中的类型, 如下例: SELECT 24.0000/38.0000     --0                            SELECT CAST(24/38 AS NUMERIC(18,4))         --0 SELECT CAST(24/38.0000 AS NU…
cat label_movie2|grep BBD252CC0A4FE7D10C990261D5CEACB5|awk -F "," '{for(i=2;i<NF;i++) print $i}'|wc -l 在label_movie2文件中按照某个ID查找,然后按照分隔符“,”分割,最后统计结果 cat label_movie2|awk '$1 ~/^BBD/'| 查找文件开头以BBD字母为首的字段. mongodb result集合查询:db.getCollection('lab…
计算列区别于需要我们手动或者程序给予赋值的列,它的值来源于该表中其它列的计算值.比如,一个表中包含有数量列Number与单价列Price,我们就可以创建计算列金额Amount来表示数量*单价的结果值,创建Amount列后,在程序中需要使用计算金额这个值时,就不用取出Number列与Price列的值后相乘,而是直接取Amount列的值就可以了. 那么这个计算列要如何建立呢? 先看通过sql的方法创建: create table table1 ( number decimal(18,4), pric…
-- ============================================= -- Author: Evan -- Create date: 2018年3月15日10:: -- Description: 计算某特殊字符在字符串中出现的位置 -- ============================================= /* 返回@find在@str中第(@n)次出现的位置.没有第(@n)次返回0. */ Create function [dbo].[Fn_F…
--本周最大值与最小值.平均值 DECLARE @WeekMax float,@WeekMin float,@WeekAvg float,@AddDate varchar(20) DECLARE @WeekStart int,@WeekEnd int,@WeekCount int,@WeekStr varchar(12),@WeekNum int SET @AddDate = CAST(@Year as varchar(4)) + '-' + CAST(@Month as varchar(4))…
在统计某种数据名称是否存在规律时,可以通过group by进行统计,但是有时候存在钱几个字符相同,后面字符不同的情形.这样可以通过按照前几个字符串进行统计,SqlServer和Oracle中都可以使用left()函数实现.具体使用方法为left(col_name,N),其中col_name为列名,N为左起前N个字符. https://docs.microsoft.com/zh-cn/sql/t-sql/functions/left-transact-sql…
在实际应用的计算中,很多时候我们需要对最后计算结果四舍五入,其实在Sqlserver中也有对应的四舍五入函数,就是Round函数,Round函数的格式为Round(column_name,decimals),column_name代表要舍入的字段,decimals代表要保留到小数后几位,使用Sqlserver的Round函数可以四舍五入只保留整数部分,也可只保留到小数点后几位. 例如我们计算10除于4.1可以这样写:Select 10.0/4.1,得出的结果为2.439024. 如果四舍五入到整…
需求:有四行数据,如下: 1.苹果 2.橘子 3.桃子 4.波罗 合并成一个字段:苹果,橘子,桃子,波罗: 需求明确之后,先弄点测试数据,上代码: --创建一个临时表 Create table #temp ( testName varchar() ) --写入测试数据 INSERT INTO #temp(testName) values('苹果'); INSERT INTO #temp(testName) values('橘子'); INSERT INTO #temp(testName) val…
sqlserver中的表信息字段信息这些东西也是放到系统表中的,以下sql语句用于查询某表的字段信息. select t1.id object_id,t1.name object_name,t2.value table_comment,t3.colorder,t3.name col_name,t5.name col_type,COLUMNPROPERTY(t1.id,t3.name,'Precision') precision,COLUMNPROPERTY(t1.id,t3.name,'Scal…
作用:当判断是否满足条件,而条件字段又是用","分割的时候. 如果数据库中一个字段插入数据,并且以","分割.有点像行转列 4804510101,4946645450,4870799370,4386453634,19563423 select ur2.c_orgunitid p2.c_ranges from TB_WK_PRIZE p2 inner join (select level l from dual connect by level <= 100)…
场景: 表名:testsuer id     name 1       小红,小李,李红,小法 要结果值为: 1     小红 1     小李 1     李红 1     小法 MYSQL函数解释: substring_index(str,delim,count) 说明:substring_index(被截取字段,关键字,关键字出现的次数) JOIN:这个join最基本原理是笛卡尔积.通过这个方式来实现循环 INNER JOIN(内连接,或等值连接):获取两个表中字段匹配关系的记录. LEF…
原文:SqlServer中获取所有数据库,所有表,所有字段 一.获取所有数据库 select * from master.dbo.SysDatabases 二.获取某个库中所有表 SELECT * FROM SysObjects Where XType='U' --XType='U':表示所有用户表; --XType='S':表示所有系统表; 三.获取某表中的字段,字段类型等 SELECT * FROM INFORMATION_SCHEMA.columns WHERE TABLE_NAME='C…
问题简述 说白了,Java根据指定分隔符分割字符串,忽略在引号(单引号和双引号)里面的分隔符; oom压测的时候,正则匹配"(?=(?:[^\"]*\"[^\"]*\")*[^\"]*$)(?=(?:[^']*'[^']*')*[^']*$)" 挂掉了,栈溢出了. 压测使用了200k的sql字符串,也就是200*1024Byte的字符串,单层时间复杂度就有2*10^5,不说时间的问题,正则匹配的迭代量太大,往往2*10^5中首次就可以匹…
表中添加新字段ALTER TABLE 表名 ADD 字段名 VARCHAR(20) NULL 表中添加自增idalter table lianxi add id int primary key IDENTITY(1,1) NOT NULL…
建表语句: CREATE TABLE `test2` ( `id` int unsigned NOT NULL AUTO_INCREMENT, `content` varchar(21842) NOT NULL DEFAULT '', PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=0 DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci; 该表中varchar类型的字段能容纳的最大字符数21842是怎么得来…
来源:https://blog.csdn.net/qq_23888451/article/details/86615555 https://blog.csdn.net/cyxinda/article/details/78254110 一.Oralce和DB2都支持的语法:UPDATE ASET (A1, A2, A3) = (SELECT B1, B2, B3 FROM B WHERE A.ID = B.ID) 二.MS SQL Server不支持这样的语法,相对应的写法为: 方式一: UPDA…
1.查询数据库中所有的数据库表 SELECT * FROM sysobjects WHERE xtype = 'u' AND name != 'sysdiagrams'; 2.查询数据库表中的说明字段 SELECT A.name AS table_name, B.name AS column_name, C.value AS column_description FROM sys.tables A INNER JOIN sys.columns B ON B.object_id = A.objec…
准备数据 Sql脚本如下,两张表,一张客户表Customers只包含customerid和city字段,一张订单表Orders包含orderid和customerid(关联Customers的customerid字段) IF OBJECT_ID('dbo.Orders') IS NOT NULL DROP TABLE dbo.Orders; IF OBJECT_ID('dbo.Customers') IS NOT NULL DROP TABLE dbo.Customers; GO CREATE…
一.常用字段. 在orm中有一些字段是常用字段: 1.AutoField 这个字段是自增的,必须填入参数primary_key=True,也就是说这个字段是表的主键,如果表类中没有自增列,就会自动创建名为id的自增列. 2.IntegerField 是一个整数类型,范围在 -2147483648到 2147483647.但是一般不用它来存储手机号,位数不够. 3.DateField. 这是日期字段,也就是YYYY-MM-DD,相当于Python中的datetime.date()实例. 4.Dat…
首先声明,我只是个程序员,不是专业的DBA,以下这篇文章是从一个问题的解决过程去写的,而不是一开始就给大家一个正确的结果,如果文中有不对的地方,请各位数据库大牛给予指正,以便我能够更好的处理此次业务. 项目背景 这是给某数据中心做的一个项目,项目难度之大令人发指,这个项目真正的让我感觉到了,商场如战场,而我只是其中的一个小兵,太多的战术,太多的高层之间的较量,太多的内幕了.具体这个项目的情况,我有空再写相关的博文出来. 这个项目是要求做环境监控,我们暂且把受监控的设备称为采集设备,采集设备的属性…
数据导入从sql server 到mysql (将数据以文本格式从sqlserver中导出,注意编码格式,再将文本文件导入mysql中): 1.若从slqserver中导出的表中不包含中文采用: bcp mytest.dbo.test out D:\temp\aa.txt -c -t"\t" –T bcp "select * from mytest.dbo.test" queryout D:\yucbtemp\aa.tx t -c -t"\t"…
个人自用导出文本文件命令: bcp [xxDB].[dbo].[xx_tb_name] out d:\temp\xxx.txt -c -t "\t" -T bcp是SQL Server中负责导入导出数据的一个命令行工具,它是基于DB-Library的,并且能以并行的方式高效地导入导出大批量的数据.bcp可以将数据库的表或视图直接导出,也能通过SELECT FROM语句对表或视图进行过滤后导出.在导入导出数据时,可以使用默认值或是使用一个格式文件将文件中的数据导入到数据库或将数据库中的数…
SQLSERVER中的假脱机spool 我发现网上对于假脱机的解释都非常零散,究竟假脱机是什么? 这几天在家里研究了一下,收集了很多网上的资料 假脱机是中文的翻译,而英文的名字叫做 spool 在徐老师写的<SQLSERVER企业级平台管理实践>里提到了一下假脱机 在SQLSERVER I/O问题的那一节 在性能监视器里,有一个计数器“worktables/sec” : 每秒创建的工作表数.例如,工作表可用于存储查询假脱机(query spool),LOB变量,XML变量,表变量,游标的临时结…
原文转自:http://blog.jobbole.com/80395/ 首先声明,我只是个程序员,不是专业的DBA,以下这篇文章是从一个问题的解决过程去写的,而不是一开始就给大家一个正确的结果,如果文中有不对的地方,请各位数据库大牛给予指正,以便我能够更好的处理此次业务. 项目背景 这是给某数据中心做的一个项目,项目难度之大令人发指,这个项目真正的让我感觉到了,商场如战场,而我只是其中的一个小兵,太多的战术,太多的高层之间的较量,太多的内幕了.具体这个项目的情况,我有空再写相关的博文出来. 这个…