2014-10-29 32 views
1

enter image description here显示的“空间”第一次出现在一列

这里就是我想用这个餐厅的特价表的事:

  • 显示记录205返回字符的总数COL3。
  • 打印记录203以返回Col3中第一次出现空格。
  • 显示记录201以将日期从Col2返回为CCYYMMDD。

到目前为止,我写了这些,并试图纠正语法 -

SELECT SUM(col3) 
FROM dbo.Specials 
Where col1 = 205 

SELECT Top(' ', Col3) 
FROM dbo.Specials 
Where col1 = 203 

SELECT Col2(DATE, CCYYMMDD) 
FROM dbo.Specials 
WHERE Col1 = 201 

回答

2

对于用字符DATALENGTH

SELECT DATALENGTH(col3) 
FROM dbo.Specials 
Where col1 = 205 

CharIndex可以给你的第一个实例的位置总数字符串中的字符。

SELECT CHARINDEX(' ', col3) 
FROM dbo.Specials 
Where col1 = 203 

要选择日期CCYYMMDD

SELECT CONVERT(CHAR(8), Col2, 112) 
FROM dbo.Specials 
Where col1 = 201 
+0

我会用LEN()用于在我从来没有听说过的数据长度的第一个。 – 2014-10-29 21:59:27

+0

感谢Paqogomez。它工作得很好,但没有“分号”FROM – PureData1 2014-10-29 22:02:29

+0

@DanBracuk len对varchar工作正常,但datalength具有处理varchar,varbinary,text,image,nvarchar和ntext的好处。而且,由于OP没有具体说明..... – paqogomez 2014-10-30 14:26:31

相关问题