sql 自定义split】的更多相关文章

以下数据库操作针对sql server. 问题来源:由于项目中,有的表字段内容是由多个id或多个其他内容拼接而成.(如:'1,2,3,4,5',或者'name_age_school'),特点是都用某个分隔符储存. 要取得其中的某部分数据内容或者验证某个数据是否在其中. 方案一 是将数据读取到程序中,然后用程序去操作数据,将数据分割为数组,然后进行操作.最好将分割操作放到一个公用的函数库中. 方案二:由于我遇到的问题是将其中的 "name" 替换为 "name_age_shco…
SQL自定义函数split分隔字符串 一.F_Split:分割字符串拆分为数据表 Create FUNCTION [dbo].[F_Split] ( @SplitString nvarchar(max), --源字符串 @Separator nvarchar(10)=' ' --分隔符号,默认为空格 ) RETURNS @SplitStringsTable TABLE --输出的数据表 ( [id] int identity(1,1), [value] nvarchar(max) ) AS BE…
MS SQL自定义函数IsPositiveInteger   判断字符串是否为正整数,0开始的的数字不算. SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO CREATE FUNCTION [dbo].[svf_IsPositiveInteger] ( @string NVARCHAR(MAX) ) RETURNS BIT --函数返BIT数据类型,是数字返回1,非数字返回0. AS BEGIN DECLARE @rtv BIT = 1 DECLA…
1.在C#中调用sql自定义函数 1.1 标量值函数 sql语句调用 select  dbo.GetClassIDWithName(1) string strSql = string.Format("select dbo.GetClassIDWithName('{0}')",dtTime);DataTable dt = DB_Contrast.DB.OleDbHelper.GetDataTable(strSql); 1.2 表值函数 sql语句调用 select * from GetA…
Spark SQL 自定义函数类型 一.spark读取数据 二.自定义函数结构 三.附上长长的各种pom 一.spark读取数据 前段时间一直在研究GeoMesa下的Spark JTS,Spark JTS支持用户自定义函数,然后有一份数据,读取文件: package com.geomesa.spark.SparkCore import org.apache.spark.sql.SparkSession import org.apache.spark.sql.types.{ArrayType, D…
自定义一个函数,分隔一个以分隔符的隔开字符串,例如把'1,3,5,7,9' 变成 数字1 3 5 7 9的结果集. 自定义标值函数: ),)) )) --实现split功能 的函数 as begin declare @i int set @SourceSql=rtrim(ltrim(@SourceSql)) set @i=charindex(@StrSeprate,@SourceSql) begin )) ,len(@SourceSql)-@i) set @i=charindex(@StrSep…
--方法0:动态SQL法 declare @s varchar(100),@sql varchar(1000) set @s='1,2,3,4,5,6,7,8,9,10' set @sql='select col='''+ replace(@s,',',''' union all select ''')+'''' PRINT @sql exec (@sql) if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].…
功能与.net版string.Split函数类似,只不过.net返回的是数组,这个返回的是一个单列表格,每个拆分出来的子串占一行.可选是否移除空格子串和重复项.市面上类似的函数不算少,但大多都是在循环中对原串进行改动,我感觉这样不好,虽然不知道sql的字符串是不是像.net的一样具有不可变性,但感觉尽量不要去动原串最好,万一sql的字串也不可变,那变一次就要产生一份,尤其是每圈循环都在变,内存消耗让人心疼,所以才有重新造个轮子的想法. 另外,如果SQL开启了CLR支持,完全可以封装一个.net的…
遇到一个德国的客户,他们的时间格式是JJJJ-TT-DD HH:MM:SS,程序按照这个格式将时间插入数据库,但是在sql自带的转换函数convert.cast过程中报错,网上搜了下都说用convert.cast可以直接转换,但是这个客户的机器就是不行,没有办法自己写了个转换函数,供大家参考: 由于自定义函数里面不能直接使用getdate方法:所以先创建了个获取本地时间的小函数: create view v_getdate as select getdate() as now_date 然后是转…
方法一: 比如需要对SQL表中的字段NAME进行如下的排序: 张三(Z) 李四(L) 王五(W) 赵六(Z) 按照sql中的默认排序规则,根据字母顺序(a~z)排,结果为:李四  王五 赵六 张三   自定义排序:order by charindex(NAME,‘张三李四王五赵六’)  CHARINDEX函数返回字符或者字符串在另一个字符串中的起始位置.CHARINDEX函数调用方法如下:        CHARINDEX ( expression1 , expression2 [ , star…