INSERT SELECT仅查询特定行

时间:2013-12-23 03:59:16

标签: c# sql ms-access

在C#中为我的sql命令获取此代码以进行访问。

INSERT INTO tbl2 (doctor_code, doctor_prclicense, doctor_hospacc) SELECT doctor_code, doctor_prclicense, doctor_hospacc FROM tbl1

问题虽然我想要的只是复制特定的行。我该怎么做?我可以使用Count(*) = row2吗?

谢谢!

这是想要实现的。

在doctor_hospacc栏中,它有一个像@ 199 @ 332 @ 111

这样的字符串

我想拆分这些字符串以获取数字并省略@符号。 现在第1行有doctor_code,doctor_prclicense和doctor_prclicense,其中包含“@ 199 @ 332 @ 111”

所以这是想做

enter image description here

我想获取row_number列以便我可以循环它的原因。 我希望我能说清楚。

2 个答案:

答案 0 :(得分:3)

您需要在WHERE查询中设置SELECT子句才能根据condition

获取特定行

示例:SELECT * FROM TABLE1 WHERE ID=11

使用INSERT INTO 11

对gettng行尝试此:sample Doctor_Code命令
INSERT INTO tbl2 (doctor_code, doctor_prclicense, doctor_hospacc) SELECT doctor_code,    
  doctor_prclicense, doctor_hospacc FROM tbl1 WHERE doctor_code=11

建议:您的查询向SQL injection attacks开放,我建议您使用parameterised sql queries来避免这些问题。

答案 1 :(得分:1)

您可以通过以下方式获取行号:

SELECT ROW_NUMBER() OVER (ORDER BY tbl1.ID) AS ROWNO, * FROM tbl1