0

テーブルまたはテーブル変数を切り捨てることができることは知っていますが、変数も切り捨てる方法はありますか?

DECLARE @HiddenMe NVARCHAR(MAX)

SET  @HiddenMe = (select XYZ.abc)

If LEN(@HiddenME) >= 1800000  Then would like to truncate @HiddenMe . 

私にお知らせください 。参考までに、SQL 2008 を使用しています

4

2 に答える 2

2

切り捨てとは、(テーブルの切り捨てのように) すべてのデータを削除するのではなく、特定のポイントを過ぎたすべてのデータを切り捨てることを意味すると思います。これはうまくいくはずです。

SET  @HiddenMe=SUBSTRING(@HiddenMe,1,1800000)
于 2013-01-04T19:34:33.983 に答える
1

使用できますLEFT()

set @HiddenME = left(@HiddenME, 1800000)

したがって、スクリプトは次のようになります。

DECLARE @HiddenMe NVARCHAR(MAX)

SET  @HiddenMe = 'lets test a longish string to trim after a certain number of characters'

if LEN(@HiddenME) >= 1800000
  set @HiddenME = left(@HiddenME, 1800000)

デモで SQL Fiddle を参照してください

于 2013-01-04T19:35:06.577 に答える