0

我正在尝试将 Foxpro DB 迁移到 SQL Server。我在 Foxpro 中有一个 CASE 语句,它的工作原理是这样的。

CASE *variable* = 1 
    SELECT * FROM TABLEA INTO CURSOR A
CASE *variable* = 2
    SELECT * FROM TABLEB INTO CURSOR B
CASE *variable* = 3
    SELECT * FROM TABLEC INTO CURSOR C

CASE *variable* = N
    SELECT * FROM TABLEN INTO CURSOR N

有没有办法在不使用 IF 的情况下将此 CASE 语句转换为 SQL?我假设在 SQL Server CASE 中只能在 SELECT 中编写。

谢谢..

4

1 回答 1

0

这是你要问的:

SELECT * FROM IIF(var = 1, 'table1', IIF(var = 2, 'table2', 'table3')) INTO CURSOR IIF(var = 1, 'cur1', IIF(var = 2, 'cur2', 'cur3'))
于 2012-08-04T20:29:44.580 回答