【问题标题】:How can I insert an array as a column in SQL?如何在 SQL 中将数组作为列插入?
【发布时间】:2017-06-30 16:03:50
【问题描述】:

我有一个数组,它是一大组数字,我想在添加到表时用作一列。我还想在执行此操作时添加特定值,但我不确定如何。我是 SQL 新手,因此我们将不胜感激!

所以基本上我有这个:

INSERT INTO Staff_test (patient_id, 
start_date, staff_id, role, is_primary, orig_user_id, orig_entry_chron, 
user_id, entry_chron)

SELECT (patient_id, '2017-06-24', '40001704', 'BILLING', 'Y', 
'RENEGADE', '2017-06-24', 'RENEGADE', '2017-06-24'); 

FROM Staff_test
patient_id in ('123', '124', '543', '654', '328')

我知道我在这里做错了,但我不确定正确的方法。为了澄清我希望使用患者 ID 作为列值。所以它的结果应该类似于this。

请帮忙!

【问题讨论】:

  • 您的值数组是否可以作为逗号分隔列表传入?即“123,124,543,654,328”以及您使用的是什么版本的 SQL Server?
  • 我们是否假设您的数组中列出的 id 不存在于您的 Staff_test 表中?

标签: sql select multiple-columns sql-insert


【解决方案1】:

插入
员工测试(患者 ID , 开始日期 ,staff_id,角色 , is_primary , orig_user_id , orig_entry_chron , user_id, entry_chron)

SELECT(患者 ID,'2017-06-24','40001704','BILLING','Y', '叛徒','2017-06-24','叛徒','2017-06-24') FROM Staff_test 在哪里 patient_id in ('123', '124', '543', '654', '328')

如果 is_primary is_boolen 然后使用 1 instate of 'y' 如果 prent_id 是 int 则使用 int vale,如 123、124,而不是 '123'、'124'

【讨论】:

  • 我收到“',' 附近的语法错误”。运行时出错。
猜你喜欢
  • 2022-01-05
  • 1970-01-01
  • 1970-01-01
  • 2015-11-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-05-01
相关资源
最近更新 更多