我的问题是,如果sales.cost是< 100则“特殊”否则,如果sales.cost => 100“常规”IF ELSE语句SQL查询新列使用SQL?
这里是我的查询
SELECT
List.Item, List.Department, List.Group, List.Cost,
[Query 2].Sales, [Query 2].Revenue, special
FROM
[Sales Units], List
INNER JOIN
[Query 2] ON List.Item = [Query 2].Item;
最后一列是加法和这里一些更多的解释。
Special if List.Cost
Special Less than 100
Regular 100 or greater
我gooled很多,但发现情况作为一个解决方案,但如果不提供合适的解决办法,如果你解决小益智我会心存感激
这里是我使用的情况下
SELECT
List.Item, List.Department, List.Group, List.Cost,
[Query 2].Sales, [Query 2].Revenue, Special,
CASE
WHEN [Query 2].Sales < 100
THEN Special = 'Special'
WHEN [Query 2].Sales => 100
THEN Special = 'Regular'
END
FROM
[Sales Units], List
INNER JOIN
[Query 2] ON List.Item = [Query 2].Item
ORDER BY
List.Item;
(1)您是否使用SQL Server或MS访问?我删除了不兼容的数据库标签,因此您可以在其上添加权限。 (2)'案件'不起作用?你应该包括你的尝试(3)你为什么要将古老的连接语法(逗号)与适当的显式'join'语法混合? –
这里你的问题是'then Special ='special'',新的字段名称必须在字段逻辑之前或之后提供:'Special = case ... end'或'case when ... end as Special' –
@GordonLinoff是写,但告诉我如何显示其'l.Cost' feild货币格式与2小数 –