TSQL - Ortung ersten Vorkommens des Wertes in einen string
Muss ich laufen, eine einfache select-Anweisung für eine Spalte namens AddrZip alle Datensätze anzeigen, die enthalten " 1/2 " nach dem ersten Platz in der Spalte. In Access 2007 wird es sein:
**Left([Names],InStr(1,[Names]," ")-1)
, aber kann nicht herausfinden, wie es in SQL 2005. Alle Hilfe wird geschätzt.
- Ersatz InStr(x, y, z) mit charindex(x, y, z), und Sie sind fertig.
- Sue, hast du das herausgefunden?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ersten, Blick für Datensätze mit einem
' '
:CHARINDEX(' ', [AddrZip]) > 0
Dann suchen Sie nach Datensätzen mit einem
'1/2'
vorkommenden nach die' '
CHARINDEX('1/2', [AddrZip], CHARINDEX(' ', [AddrZip])) > 0
Diese "vereinfachte" version kann Arbeit:
Wenn Sie möchten, zu finden, vorkommen von
'1/2'
sind unmittelbar vor durch eine' '
wo die' '
ist der erste Raum, in den string, dann verwenden Sie den folgenden code:Vermeiden
LIKE
Betreiber, wenn überhaupt möglich. Sie sind notorisch langsam.Versuchen, diese -