在我正在写入的存储过程中,我需要将字符串(例如'ABCD'
)转换为其组成字符列表(例如('A','B','C','D')
)。有没有简单的方法去做到这一点?将SQL字符串转换为字符列表
回答
DECLARE @Str varchar(100)
DECLARE @StrT varchar(100)
SET @Str = 'ABCDEFG'
WHILE LEN(@Str) > 0
BEGIN
SET @StrT = LEFT(@Str, 1)
RAISERROR (@StrT, 0, 0) WITH NOWAIT
SELECT @Str = RIGHT(@Str, (LEN(@STR) - 1))
END
您可以修改此需要(在SQL Server 2008中使用T-SQL)。你没有真正指定你需要做什么,所以这只是将它们打印到消息控制台。
谢谢,这足以得到我需要的结果。 – 2010-11-16 20:29:05
@Andrew - 高兴帮忙 – JNK 2010-11-16 20:37:49
DECLARE @MyString varchar(100)
SET @MyString = 'ABCD'
WHILE LEN(@MyString) > 0
BEGIN
SELECT LEFT(@MyString, 1)
SET @MyString = RIGHT(@MyString, (LEN(@MyString) - 1))
END
此作品在SQL Server 2008中
大厦关闭的JNK's answer:
DECLARE @start nvarchar(MAX);
DECLARE @output nvarchar(MAX);
SELECT @start = 'ABCDEFG', @output = '';
WHILE LEN(@start) > 0
BEGIN
SET @output = @output + '''' + LEFT(@start, 1) + ''',';
SELECT @start = RIGHT(@start, (LEN(@start) - 1))
END
SELECT CASE WHEN LEN(@output) > 0 THEN LEFT(@output, (LEN(@output) - 1)) ELSE NULL END;
这将让你你想要的格式。
我个人更喜欢下面的,因为它是比较容易的工作与表格数据:
DECLARE @start nvarchar(MAX);
DECLARE @output TABLE (value nchar(1));
SET @start = 'ABCDEFG'+NCHAR(1121);
WHILE LEN(@start) > 0
BEGIN
INSERT INTO @output (value) VALUES (LEFT(@start, 1));
SELECT @start = RIGHT(@start, (LEN(@start) - 1))
END
SELECT value, CAST(value AS varbinary(4)) AS hex FROM @output;
那么,你已经晚了四年,但我很欣赏努力 – 2014-10-20 20:53:04
@Andrew刚刚完成它,因为我有同样的问题。 – Trisped 2014-10-20 20:59:56
- 1. 将字符串转换为字列表?
- 2. 将字符串列表转换为字符串列表
- 3. 将字符串转换为列表
- 4. 将列表转换为字符串
- 5. 将Enumerable.Range转换为字符串列表
- 6. 将字符串转换为列表
- 7. Java - 将字符串转换为列表
- 8. 将AppleScript列表转换为字符串
- 9. 将字符串或字符串[]转换为使用Groovy列表
- 10. 如何将字符串列表转换为查询字符串?
- 11. 将字符串转换为字符串
- 12. 如何将此sql字符串转换为ibatis sql字符串?
- 13. 将字符(或数组)的列表转换为字符串
- 14. Java集合将字符串转换为字符列表
- 15. 将字符串转换为字符
- 16. 将字符串转换为字符
- 17. 将字符串转换为字符
- 18. 将char字符串转换为字符
- 19. Java - 将字符串转换为字符[]
- 20. InfixToPostfix将字符转换为字符串
- 21. 将嵌套字符串列表转换为嵌套字符串列表
- 22. SQL - 将字符串转换为文本
- 23. 将日期转换为字符串SQL
- 24. T SQL将行转换为字符串
- 25. SQL Server将字符串转换为datetime
- 26. 转换字符串列表
- 27. 将字符串转换为
- 28. 将字符串转换为“_”
- 29. 将字符串转换为?
- 30. 将“字符串”和“数字串”的列表转换为“数字串”被转换为数字的列表
哪个RDBMS? 2更多去 – 2010-11-16 20:11:23
哇,这是我的愚蠢没有指定。 – 2010-11-16 20:12:30