更新并在一个查询中选择

时间:2010-10-30 04:25:41

标签: sql mysql

我找到了类似的问题和正确的答案。但它们对我来说有点复杂。我只想要一个简单的基本陈述。

我有:

string sql = "UPDATE tblPopUp 
                 SET PopUp = 'False' 
               WHERE DisplayNo = 1"

...和

string sql1 = "SELECT Period  
                 FROM tblPopUp 
                WHERE DisplayNo = 1"

我如何组合它们?

5 个答案:

答案 0 :(得分:14)

UPDATE tblPopUp  
SET PopUp = 'False', Period = Period  
OUTPUT DELETED.Period
WHERE DisplayNo = 1

有关OUTPUT子句的更多信息,请查看this post

答案 1 :(得分:2)

你不能。

SQL UPDATE语句中没有用于返回数据的约定。反之亦然 - SELECT语句不会将信息写入表。

如果您发现了与您想要的相似的问题/答案,请提供链接。

答案 2 :(得分:0)

正确的方法(现在用于MySQL 5+)将使用存储过程。

答案 3 :(得分:0)

旧的Q,但仍在使用中,对于psql解决方案,请尝试以下操作:

UPDATE table SET column = value
WHERE condition
RETURNING column;

答案 4 :(得分:-1)

试试这个

UPDATE tblPopUp 
             SET PopUp = 'False' 
           WHERE DisplayNo = '1'
(
SELECT Period  
             FROM tblPopUp 
            WHERE DisplayNo = '1'
)