Ⅰ sql字符串如何统计
先统计出请假旷课次数,然后计算
select count(*)a from 表名 where 字段='请假'
得出a=?次数
select count(*)b from 表名 where 字段='旷课'
得出b=?次数
再用c=a*1+b*2就行了吧
Ⅱ 用SQL统计给定字符串中单词的个数 随便一个英语句子就可以
SQL统计给定字符串中单词的个数
实现:首先计算字符串的长度,然后将字符串的所有单词间隔的空格删掉,计算删掉空格以后的字符串的长度,这两个长度之差加一就是单词的个数。
select LENGTH(str) - length(REPLACE(str',' ',''))+1 from al;
Ⅲ SQL中统计字符串长度的函数是什么
SQL中统计字符串长度的函数是:函数len(string)。
比如:
select len('abc')输出3
select len('abcde')输出5
字符串函数对二进制数据、字符串和表达式执行不同的运算。此类函数作用于CHAR、VARCHAR、 BINARY、 和VARBINARY 数据类型以及可以隐式转换为CHAR 或VARCHAR的数据类型。可以在SELECT 语句的SELECT 和WHERE 子句以及表达式中使用字符串函数。
常用的字符串函数有:
ASCII():返回字符表达式最左端字符的ASCII 码值。在ASCII()函数中,纯数字的字符串可不用‘’括起来,但含其它字符的字符串必须用‘’括起来使用,否则会出错。
CHAR():将ASCII 码转换为字符。如果没有输入0 ~ 255 之间的ASCII 码值,CHAR() 返回NULL 。
LOWER()和UPPER():LOWER()将字符串全部转为小写;UPPER()将字符串全部转为大写。
STR():把数值型数据转换为字符型数据。
STR (<float_expression>[,length[, <decimal>]])
length 指定返回的字符串的长度,decimal 指定返回的小数位数。如果没有指定长度,缺省的length 值为10, decimal 缺省值为0。
当length 或者decimal 为负值时,返回NULL;
当length 小于小数点左边(包括符号位)的位数时,返回length 个*;
先服从length ,再取decimal ;
当返回的字符串位数小于length ,左边补足空格。
LTRIM() 把字符串头部的空格去掉。
RTRIM() 把字符串尾部的空格去掉。
left():LEFT (<character_expression>, <integer_expression>)返回character_expression 左起 integer_expression 个字符。
RIGHT():RIGHT (<character_expression>, <integer_expression>)返回character_expression 右起 integer_expression 个字符。
SUBSTRING():SUBSTRING (<expression>, <starting_ position>, length)返回从字符串左边第starting_ position 个字符起length个字符的部分。
CHARINDEX():返回字符串中某个指定的子串出现的开始位置。CHARINDEX (<’substring_expression’>, <expression>)
其中substring _expression 是所要查找的字符表达式,expression 可为字符串也可为列名表达式。如果没有发现子串,则返回0 值。
此函数不能用于TEXT 和IMAGE 数据类型。
PATINDEX():返回字符串中某个指定的子串出现的开始位置。PATINDEX (<’%substring _expression%’>, <column_ name>)其中子串表达式前后必须有百分号“%”否则返回值为0。与CHARINDEX 函数不同的是,PATINDEX函数的子串中可以使用通配符,且此函数可用于CHAR、 VARCHAR 和TEXT 数据类型。
QUOTENAME():返回被特定字符括起来的字符串。QUOTENAME (<’character_expression’>[, quote_ character]) 其中quote_ character 标明括字符串所用的字符,缺省值为“[]”。
REPLICATE():返回一个重复character_expression 指定次数的字符串。REPLICATE (character_expression integer_expression) 如果integer_expression 值为负值,则返回NULL 。
REVERSE():将指定的字符串的字符排列顺序颠倒。REVERSE (<character_expression>) 其中character_expression 可以是字符串、常数或一个列的值。
REPLACE():返回被替换了指定子串的字符串。REPLACE (<string_expression1>, <string_expression2>, <string_expression3>) 用string_expression3 替换在string_expression1 中的子串string_expression2。
SPACE():返回一个有指定长度的空白字符串。SPACE (<integer_expression>) 如果integer_expression 值为负值,则返回NULL 。
STUFF():用另一子串替换字符串指定位置、长度的子串。
STUFF (<character_expression1>, <start_ position>, <length>,<character_expression2>):如果起始位置为负或长度值为负,或者起始位置大于character_expression1 的长度,则返回NULL 值。如果length 长度大于character_expression1 中 start_ position 以右的长度,则character_expression1 只保留首字符。
拓展资料:
SQL语言,是结构化查询语言(Structured Query Language)的简称。SQL语言是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统;同时也是数据库脚本文件的扩展名。
是高级的非过程化编程语言,允许用户在高层数据结构上工作。它不要求用户指定对数据的存放方法,也不需要用户了解具体的数据存放方式,所以具有完全不同底层结构的不同数据库系统可以使用相同的结构化查询语言作为数据输入与管理的接口。SQL语言语句可以嵌套,这使他具有极大的灵活性和强大的功能。
Ⅳ 在SQL中,统计某字符串的个数,语句改如何写
selectckgj,count(1)cnt
fromtabname
groupbyckgj
Ⅳ 如何在SQL SERVER中计算字符的长度
通过String自带的length()方法获取字符串长度。 String a="abcdefg";//定义一个字符串int len = a.length();//通过length获取字符串长度,这里等于7length()该方法返回此字符串的长度。长度是等于Unicode代码单元中的字符串的数目。
Ⅵ SQL函数怎样算出一个字符串逗号隔开的字符串数量
sql中可以自定义函数来统计逗号隔开的字符串的数量:
参考如下:
drop function search_dh
go
CREATE FUNCTION search_dh(@str varchar(max))
returns int--设置返回值是returns
AS
BEGIN
DECLARE @result int --返回逗号个数
declare @j int
set @result = 0
set @j = 1
while @j<len(@str)
begin
if substring(@str,@j,1) = ',' --@j是开始位置,1位置参数是长度值
begin
set @result = @result+1
end
Ⅶ SQL语句统计多个字段某个字符的个数
1.这个很好解决,就是工具自己的数据字符串的最长可能出现的长度来选择对应该列的数据类型,
2.其中varchar,char类型可以存放8000个字符,而text类型则能存储2g个字符,相信应该够用了,
3.使用sql语句向字段中存储字符串的语句如下:
update
表名
set
字段名=你要存储的字符串呵呵,希望能有帮助,^_^
Ⅷ sql中如何统计一字段中字符串的个数
declare @s varchar(100)
set @s='156434A27kAsdABCiosd-01&**('
--找出现的次数
select len(@s)-len(replace(@s,'A',''))
SQL中字符串截取函数(SUBSTRING)
1、left(name,4)截取左边的4个字符
列:
SELECT LEFT(201809,4) 年
结果:2018
2、right(name,2)截取右边的2个字符
SELECT RIGHT(201809,2) 月份
结果:09
(8)sql符串数量怎么算扩展阅读
sql中group by用法:
GROUP BY可以先从字面上来理解,GROUP表示分组,BY后面写字段名,就表示根据哪个字段进行分组,如果有用Excel比较多的话,GROUP BY比较类似Excel里面的透视表。
GROUP BY必须得配合聚合函数来用,分组之后可以计数(COUNT),求和(SUM),求平均数(AVG)等。
常用聚合函数:count()计数、sum()求和、avg()平均数、max()最大值、min()最小值。
SELECT 语句指定了两列(Customer 和 SUM(OrderPrice))。"SUM(OrderPrice)" 返回一个单独的值("OrderPrice" 列的总计),而 "Customer" 返回 6 个值(每个值对应 "Orders" 表中的每一行)。因此,我们得不到正确的结果。不过,您已经看到了,GROUP BY 语句解决了这个问题。
Ⅸ Sql Server 计算某个字符 在字符串中有多少
引言:比如有一个字符串“oiddiaj/j9jkl/88ol”,想要计算字符串中/的个数,用到len这个方法
[sql] view plain
len('oiddiaj/j9jkl/88ol')-len(replace('oiddiaj/j9jkl/88ol','/',''))
想判断某个字符包含在某个字段内可以用charindex函数
Ⅹ sql语言:如何查询字符串某个字符的个数
好像没有直接的方法吧,写个循环试试
loop
a=instr(string,'n',1,1);
--查找第一次出现的位置
string
=
substr(string,a+1,length(string)-a);
--截取第一次出现位置之后的字符,为新的字符串
if
a
<>
0
then
--查询一次,记录增加一次,当查询结束时,找不到字符,返回数据为0
,则推出循环
b=
b+1;
else
b=b;
end
if;
EXIT
WHEN
A=0;--当截取不到字符串时,推出循环
end
loop;
我只大体写了个循环思路,具体的自己完善吧~