用于检索唯一标识符的SQL查询

时间:2013-12-19 10:46:16

标签: sql sql-server

我有表M1,它有两个字段M_ID和Indicator。我必须编写一个SQL查询来检索每个M_ID的数据,并在成功处理后使用update语句。

示例:M_ID的值为1,2,3,4等。

表格结构:

  • M1M_ID, F1, F2, F3, UpdateIndicator

F *是列。

在每次执行查询期间,我都需要检索单个M_ID的详细信息。我无法对查询中的M_ID值进行硬编码。

我没有太多接触SQL,作为集成DATA BASE系统的一部分,我只是在系统中使用查询来检索数据。

我试过

select * from M1 

使用GROUPBY,我在SQL中拥有最少的知识,但它返回数据库中的所有M_ID

输出应如下所示:

如果M_ID的值为1,2,3,4,则我的SQL查询应返回

  • 第一个实例为row<1,F1,F2,F3,UpdateIndicator>
  • 第二个实例为row<2,F4,F5,F6,UpdateIndicator>

依旧......

1 个答案:

答案 0 :(得分:0)

通过M_ID获取数据:

SELECT * FROM M1 WHERE M_ID=1

获取所有M_ID:

SELECT M_ID FROM M1

也许,你可以用这种方式优化你的程序:

/* This will apply updates to all fields that have Indicator field set */
UPDATE M1 SET /* any fields updates */ WHERE UpdateIndicator=1

/** 
 * EXAMPLE:
 * Inrement F1 and decrement F2 on each record that requires update
 */
UPDATE M1 SET F1=F1+1, F2=F2-1 WHERE UpdateIndicator=1
相关问题