回答
你可以试试下面的
Select IDENTITY(int, 1,1) AS ident,
case IsNumeric(Agent)
when 1 then Agent
else null end ValueField,
case IsNumeric(Agent)
when 0 then Agent
else null end AgentId
from yourAgentTable
但不要期望的结果是像你如何问
你会得到答案,就像
----------------------------------------------------
Ident | ValueField | Agent
----------------------------------------------------
1 null Agent1
2 1 null
3 2 null
4 3 null
5 null Agent2
6 4 null
7 5 null
8 6 null
希望现在您应该拥有您获取数据的身份以及其顺序如何,
现在执行更新声明以获取其ID为null的代理标识,并且您将获得您的数据。
'IsNumeric'不是**可靠的**来识别非数字数据 –
这是数据鉴于VR46所以认为可以帮助。它的再次实施细节。 – bhushanvinay
尝试这种解决方案。变量@tbl具有测试数据,变量@result_tbl将具有输出。我希望这有帮助。
DECLARE @tbl TABLE (VALUE NVARCHAR(MAX))
DECLARE @result_tbl TABLE(agent_name NVARCHAR(100), VALUE NVARCHAR(MAX))
DECLARE @value NVARCHAR(MAX),
@agent_name NVARCHAR(100)
INSERT INTO @tbl
SELECT 'Agent1'
UNION ALL
SELECT '1'
UNION ALL
SELECT '2'
UNION ALL
SELECT '3'
UNION ALL
SELECT 'Agent2'
UNION ALL
SELECT '4'
UNION ALL
SELECT '5'
UNION ALL
SELECT 'Agent3'
UNION ALL
SELECT '6'
DECLARE cur CURSOR FOR SELECT * FROM @tbl AS T
OPEN cur
FETCH NEXT FROM cur INTO @value
WHILE @@FETCH_STATUS = 0
BEGIN
IF @value LIKE 'Agent%'
BEGIN
SET @agent_name = @value
FETCH NEXT FROM cur INTO @value
END
INSERT INTO @result_tbl
VALUES(@agent_name, @value)
FETCH NEXT FROM cur INTO @value
END
CLOSE cur
DEALLOCATE cur
SELECT * FROM @result_tbl
超级,它的工作,非常感谢你..... – Sunil
- 1. SQL服务器拆单排为两行
- 2. SQL:拆分列值分为两列
- 3. 如何将窗体拆分为两列?
- 4. SQL Sting拆分为单列
- 5. 将两列转换为两个逗号分隔的列表在sql服务器
- 6. 将单个Excel列拆分为两个单独的列,将值拆分?
- 7. 如何在VBA中将阵列拆分为两个阵列
- 8. 拆分邮件列到三列在SQL服务器
- 9. 将csv列拆分为两列(powershell)
- 10. 将Pandas DataFrame列拆分为两列
- 11. 将列中的文本拆分为两个单独的列
- 12. 如何拆分2列中的2个数据类型的列(sql服务器)
- 13. SQL服务器 - 打破单列成两
- 14. 如何将列的值拆分为SQL Server中的动态列?
- 15. SQL服务器:拆分柱为多列(表格式)
- 16. SQL Server的拆分两列
- 17. SQL服务器 - 两列
- 18. SQL服务器 - 找两列
- 19. 将单个列拆分为多个列
- 20. 如何将列中的数据拆分为两个单独的列?
- 21. Python ObjectListView - 如何将列表拆分为两列
- 22. Powershell将csv列的值拆分为两个单独的列值
- 23. 将无序列表拆分为两列的最简单方法
- 24. 如何拆分一列到两列在SQL
- 25. 使用SQL服务器中的联合连接拆分列
- 26. C#中sql服务器的拆分列值
- 27. 将列拆分为多列
- 28. 将列拆分为多列
- 29. 将字符串拆分为两列(SQL或PL/SQL)
- 30. 在SELECT中将列值拆分为两列?
patindex函数将帮助你做到这一点。 –
“Name”列中的“agent1”值总是有3行? –
为什么你要存储这样的数据。将这些数据排在第一位 –