フィールドから100文字を取るselectステートメントがあります。これを行う簡単な方法はありますか?愚かなTSQL質問 - Selectステートメントで(N)文字を取る
以下にいくつかの疑似コードを示します。
Select substring(0, 100, longField)
from myTable
フィールドから100文字を取るselectステートメントがあります。これを行う簡単な方法はありますか?愚かなTSQL質問 - Selectステートメントで(N)文字を取る
以下にいくつかの疑似コードを示します。
Select substring(0, 100, longField)
from myTable
あなたはそれを持っています。 SUBSTRING()
メソッドを使用します。これは、任意の文字列/文字/バイナリ/イメージのデータ型で機能します。
DECLARE @str varchar(1000);
SELECT @str = 'foobar-booz-baz-cowboys';
SELECT SUBSTRING (@str, 0, 10);
-- returns foobar-boo
--from a table:
SELECT SUBSTRING(CustomerName,0,100)
FROM MyTable;
あなたの疑似コードはかなり近いです。
select substring(longField, 0, 100)
from myTable
(参考まで)
SQLのサブストリング::
substring(expression, starting_pos, length)
体位はありません。0から、1から番号が付けられている動作しますが、私はあまり間違ってないです場合(で確認することはできません瞬間)、0を指定すると、指定した長さより1つ小さい文字を切り捨てます。 –
愚かな1ベースのインデックス。 –
あなたは何を期待しましたか?結局のところ、愚かな質問です。 –
LEFT (Transact-SQL)を使用している最も簡単な方法:
SELECT
LEFT(longField,100) AS longField, ...
FROM myTable
WHERE...
最初のSELECTはSET –
@Samとする必要があります。申し訳ありませんが、間違っています。どちらもコンパイルされます。私は2005年との後方互換のための2つのステートメントだけを含んでいました。通常は(2008+)それは 'DECLARE @str varchar(1000)= 'foobar-booz-baz-cowboys';' –
です。 –