如where p.end_time.substring(0,3) = '2012',想表达意思是这样,但写法是错的,p.end_time里的数据是2012/12/11
sql中在where字句里截取字符方法如下:
1、如果是sqlserver:where left(p.end_time,4) = '2012'。
2、如果是Oracle:where substr(p.end_time,0,4) = '2012'。
举例:
1、oracle: 'where substr(字段名,1,2)='''123''''
2、sqlserver: 'where substring(字段名,1,2)='''123''''
扩展资料:
sql中,常用函数介绍:
1、AVG():返回平均值
2、COUNT():返回行数
3、FIRST():返回第一个记录的值
4、LAST():返回最后一个记录的值
5、MAX():返回最大值
6、MIN():返回最小值
7、SUM():返回总和
8、UCASE():将某个字段转换为大写
9、LCASE():将某个字段转换为小写
10、MID():从某个文本字段提取字符
11、LEN():返回某个文本字段的长度
12、ROUND():对某个数值字段进行指定小数位数的四舍五入
13、NOW():返回当前的系统日期和时间
14、FORMAT():格式化某个字段的显示方式
15、INSTR():返回在某个文本域中指定字符的数值位置
16、LEFT():返回某个被请求的文本域的左侧部分
17、RIGHT():返回某个被请求的文本域的右侧部分
参考资料来源:百度百科-SQL函数
sql中在where字句里截取字符方法如下:
1、如果是sqlserver:where left(p.end_time,4) = '2012'。
2、如果是Oracle:where substr(p.end_time,0,4) = '2012'。
举例:
1、oracle: 'where substr(字段名,1,2)='''123''''
2、sqlserver: 'where substring(字段名,1,2)='''123''''
sql中如何在where字句里截取某个字段的前几位字符
sql中在where字句里截取字符方法如下:1、如果是sqlserver:where left(p.end_time,4) = '2012'。2、如果是Oracle:where substr(p.end_time,0,4) = '2012'。举例:1、oracle: 'where substr(字段名,1,2)='''123'''2、sqlserver: 'where substring(字段名,1,2...
sql截取指定字符前面?
SQL查询的时候截取字段在逗号前的部分1、查询数据库表所有的字段,直接利用select语句。2、查询数据库表部分字段,可以利用select字段命令,select字段名from数据库表。3、按照条件查询,利用where后面加条件,select字段名from数据库表where条件。4、查询数据库字段记录不重复的结果,利用distinct?命令。5、查...
sql截取特定字符前的数据
在SQL中,截取特定字符前的数据通常可以通过`LEFT`函数结合`CHARINDEX`(在某些数据库如SQL Server中)或`INSTR`(在MySQL中)等函数来实现。具体方法取决于你所使用的数据库系统。以SQL Server为例,如果你想从一个字符串字段中截取某个特定字符(比如逗号`','`)前的所有数据,你可以使用`LEFT`函数...
SQL 查询的时候截取字段在逗号前的部分
可以使用substring_index(column, ',', 2)方法来实现。具体SQL语句为:select id,name,substring_index(address, ',', 2) from people;substring_index(address, ',', 2)的意思是截取第二个 ',' 之前的所有字符。
如何利用SQL语句在字符列取任意字符前(或后)几个字符,如:“重庆市江津...
insert into @t select 1 ,'四川省文安市苹果镇桃子乡山村'union select 2, '广东中山市小榄镇团结村11大队'union select 3, ''select * from @t select [id], LEFT(addr, case when CHARINDEX('镇',addr,1)>1 then CHARINDEX('镇',addr,1)-1 else 0 end ) as 镇前面的任意字符 fro...
oracle sql 取字段前几位?
substr('Hello World',0,1) \/\/返回结果为 'H' ,从字符串第一个字符开始截取长度为1的字符串。另外还有以下建议:select * from table where substr('字段a',2,3)='abc'。substr(字段, 起始位, 长度)。sample只对单表生效,不能用于表连接和远程表。sample会使SQL自动使用CBO。延展内容:...
sql 在oracle中取字段前几位并作为条件
substr('Hello World',0,1) \/\/返回结果为 'H'从字符串第一个字符开始截取长度为1的字符串 select * from table where substr('字段a',2,3)='abc'
sql中取编号的前六位怎么做?
select top 6 from (select from 表 where 编号>9 编号 Desc) b
SQL Server中使用SQL语句取各分类中的前几条记录
)要求取相同PO_NO按Trans_Date倒序排序的前两条记录。1.Where子句嵌套SELECT的方式。在嵌套的SELECT语句中可以与主表的字段相关联,达到分类的目的。这种方式又有三种写法:1)如果表中有主键,可以用IN的方式。SELECT * FROM tmp_Trans t WHERE ID IN(SELECT TOP 2 ID FROM tmp_Trans WHERE PO_...
sql2005 查询表中某个字段的的前4位
如果是bigint类型则使用沉默用户的答案,如果是varchar等字符串类型的话,使用left函数比较,如 where left(Num,4)=='2301'