使用if else创建视图

时间:2016-06-20 12:54:37

标签: sql sql-server

我想查看或只是以特定的方式从数据库中获取一些数据。

例如,如果数据是:

allSteps += routeDetails.steps.map({$0.instructions}).joinWithSeparator("\n\n")
steps.text = allSteps

输出应为:

 1 | test | test | 0 | test  
 2 | test | test | 1 | test
 3 | test | test | 1 | test
 4 | test | test | 1 | test
 5 | test | test | 0 | test

有什么想法吗?

4 个答案:

答案 0 :(得分:5)

使用CASE表达式。

<强>查询

SELECT col1, col2, col3,
CASE col4 WHEN 0 THEN 'False'
WHEN 1 THEN 'TRUE' 
ELSE NULL END AS col4, col5
FROM your_table_name;

答案 1 :(得分:3)

SQL中的if条件使用CASE expression表示:

SELECT
   id
,  a
,  b
,  CASE c WHEN 0 THEN 'FALSE' ELSE 'TRUE' END AS c
,  d
FROM my_table

请注意,SQL Server中有两种形式的CASE表达式 - 简单和搜索。以上是一个简单的例子。

答案 2 :(得分:2)

如果2012+你可以使用内联IF

IIF(condition,a,b)

答案 3 :(得分:1)

我想你可能会在CASE声明之后。试试这个:

SELECT 
  Col1, 
  Col2, 
  Col3,
  CASE WHEN Col4 = 0 THEN 'False' WHEN Col4 = 1 Then 'True' ELSE NULL END,
  Col5
FROM YourTableName