2015-04-24 72 views
1

我想將訪問查詢轉換爲SQL Server 2008,但它似乎不喜歡我的MID語句(或我的InSTR)。我如何將它等同於SQL Server查詢?SQL Server中的Mid函數

Mid$([a]![POName],(InStr([a]![POName],"-")-1))) 
+0

'SUBSTRING'和'CHARINDEX'是中秋節和InStr函數的功能等同。 –

回答

2

想必你想要的:

DECLARE @S VARCHAR(10) = 'AA-BB' 

SELECT SUBSTRING(@S, CHARINDEX(@S, '-') - 2, LEN(@S)) 

>> AA 
+0

偉大的東西的人。 :) –

1

刪除$,swap,!與。並改變雙引號單 -

Mid(a.POName,(InStr(a.POName,'-')-1))) 
+0

事實上,現在我想到了,我不確定INSTR會工作,你需要charindex –

+1

'Mid'和'InStr'函數只有SQL 2012+我認爲。但OP要求SQL 2008. –