A. sql查询姓吴名字为三个字
select名字字段wherelen(名字字段)=3from查询的表。
两种使用方式,统一的语法结构。SQL有两种使用方式。一是联机交互使用,这种方式下的SQL实际上是作为自含型语言使用的。另一种方式是嵌入到某种高级程序设计语言(如C语言等)中去使用。前一种方式适合于非计算机专业人员使用,后一种方式适合于专业计算机人员使用。尽管使用方式不向,但所用语言的语法结构基本上是一致的。
高度非过程化。SQL是一种第四代语言(4GL),用户只需要提出干什么,无须具体指明怎么干,像存取路径选择和具体处理操作等均由系统自动完成。语言简洁,易学易用。尽管SQL的功能很强,但语言十分简洁,核心功能只用了9个动词。SQL的语法接近英语口语,所以,用户很容易学习和使用。
B. 在SQL中查询全校所有名字中含有‘宇’字且有三个汉字的学生人数
select COUNT(1) from 学校学生表 where LEN(学生名字列)=3 and 学生名字列 like ‘%宇%’
解释一下 “学校学生表” 为sql中存放学生信息的表名,“学生名字列”为表中存放学生名字的列名,查询条件中” LEN(学生名字列)=3“为筛选名字长度为3的学生,其中len()函数是sql server的内置函数,在sql server上可以直接使用,“ 学生名字列 like ‘%宇%’”为模糊匹配,筛选名字中含有“宇”的所有学生。希望对你有所帮助。
C. sql查询大于字段的所有数据,或小于字段的所有数据
例如查询时间字段在2008-01-01(含)至2008-10-31(含)之间的记录可以这么写:
select* from 表名 where 时间字段 between '2008-01-01' AND '2008-12-31'
或者是select* from 表名 where 时间字段 >= '2008-01-01' AND 时间字段 <='2008-12-31'
如果是查询所有小于当2008-10-31(含)的所有数据即为:
select* from 表名 where 时间字段<='2008-12-31'
(3)sql筛选大于3个汉字扩展阅读:
SQL Aggregate 函数计算从列中取得的值,返回一个单一的值。
有用的 Aggregate 函数:AVG() - 返回平均值,COUNT() - 返回行数,FIRST() - 返回第一个记录的值,LAST() - 返回最后一个记录的值,MAX() - 返回最大值,MIN() - 返回最小值,SUM() - 返回总和。
SQL Scalar 函数基于输入值,返回一个单一的值。
有用的 Scalar 函数:UCASE() - 将某个字段转换为大写,LCASE() - 将某个字段转换为小写,MID() - 从某个文本字段提取字符,LEN() - 返回某个文本字段的长度,ROUND() - 对某个数值字段进行指定小数位数的四舍五入,NOW() - 返回当前的系统日期和时间,FORMAT() - 格式化某个字段的显示方式。
参考资料:网络——sql
D. SQL模糊筛选(多个关键字)
sql里
like和in都是关键字,
like里面不能嵌套in,同样的in里面也不能嵌套like
多关键字模糊查询只能用or直接连接
E. SQL怎么查询字符串中至少有3个字符
用3个 _ 是可以做到的..不过估计你name的数据类型 是固定的...大概是char 这些吧改成varchar 这种的 都可以查出来 如果不想改..就只能 像楼上那样 用len 或者 len加上 like 同时做条件查询了
F. SQL中查询中间三个任意汉字
select * from 表 where 某列 like '交___税'
G. sql查询姓氏为张且姓名为三个字的学生表
select *
from 学生表
where 姓名 like '张_' and len(姓名)=3 也可以查询出结果
H. 在SQL数据库中,按照英文首字母对数据库中的汉字进行筛选
Create Function RmGetPY(@chn nchar(1))
returns char(1)
as
begin
declare @n int
declare @c char(1)
set @n = 63
select @n = @n +1,@c = case chn when @chn then char(@n) else @c end from(
select top 27 * from (
select chn =
'吖' union all select
'八' union all select
'嚓' union all select
'咑' union all select
'妸' union all select
'发' union all select
'旮' union all select
'铪' union all select
'丌' union all select
'丌' union all select
'咔' union all select
'垃' union all select
'呒' union all select
'拏' union all select
'噢' union all select
'妑' union all select
'七' union all select
'呥' union all select
'仨' union all select
'他' union all select
'屲' union all select
'屲' union all select
'屲' union all select
'夕' union all select
'丫' union all select
'帀' union all select @chn) as a
order by chn COLLATE Chinese_PRC_CI_AS
) as b
return(@c)
end
go
Create Function GetAllPY(@chn nvarchar(100))
returns varchar(30)
as
begin
declare @i int,@j int,@result varchar(100)
set @result=''
set @i=len(@chn)
set @j=1
while @j<=@i
begin
set @result = @result + dbo.RmGetPY(substring(@chn,@j,1))
set @j=@j+1
end
--将助记码限定在30个字母之内
select @result=(case when len(@result)>30 then left(@result,30) else @result end)
return @result
end
先加这两个函数,然后
select * from table where dbo.GetAllPY(字段) like 'J%'
I. sql语句中查询名字是三个字的语句怎么写
select 名字字段 where len(名字字段) =3 from 查询的表。
J. SQL中大于多少个汉字或多少个字节,并且不能出现数字怎么表示,在线等
你是要写存储过程?
还是建表的约束条件啊?
大于多少个汉字或多少个字节 比较简单, LENGTH( 列名 ) > 数字。 基本上就是长度判断了。
注:
Oracle,DB2 ,MySQL, SQLite 函数名字是 LENGTH
SQL Server 函数名字是 LEN
不能出现数字, 恐怕需要用正则表达式处理,比较方便。
这个要看你的数据库, 是什么数据库了。
因为不同的数据库, 正则表达式 的那个函数不一样的。
对于 Oracle,
使用 REGEXP_INSTR ( 列名, '[0-9]+') = 0 来实现
对于 SQL Server
使用 PATINDEX(‘%[0-9]%’, 指定字符串) = 0 来实现