如果是else查询SQL

时间:2014-04-07 08:22:58

标签: mysql sql

我想将一些表加载到我的应用程序中,但我想要的唯一表是已更新的表。

我进入了一些数据库,我得到了一个叫做#34的表格;更新了#34;但我在其他数据库的每个数据库中都没有这个表,我使用字段ID中的最后100个。

我想要做的是if / else语句,其中发生了类似的事情:

IF EXISTS SELECT * FROM table1 WHERE column1 = updated 
ELSE SELECT TOP 100 table1 FROM column1 ORDER BY column1 DESC

我希望自己明确表示希望你们能帮助我。

2 个答案:

答案 0 :(得分:1)

您的Sql查询不正确。你应该使用这样的东西:

IF EXISTS (SELECT * FROM table1 WHERE column1 = updated)
SELECT * FROM table1 WHERE column1 = updated 
ELSE SELECT TOP 100 table1 FROM column1 ORDER BY column1 DESC

答案 1 :(得分:1)

如果您不使用beginand

,则无法将其他条件提升到第二行
IF EXISTS SELECT * FROM table1 WHERE column1 = updated 
BEGIN
-- logic
END


ELSE 
BEGIN
SELECT TOP 100 table1 FROM column1 ORDER BY column1 DESC    
END

对于您的上述问题,您可以直接写出

IF NOT EXISTS SELECT * FROM table1 WHERE column1 = updated 
      SELECT TOP 100 table1 FROM column1 ORDER BY column1 DESC