这是一个简单的问题,但我有严重的问题,使其在访问工作。
我有一个查询的事:
Select * from Rates where client="Jhonsons"
但是,如果不存在Jhonsons作为客户端,则需要选择一个常规,然后运行以下查询:
Select * from Rates where client="General"
就是这样。这似乎是一个简单的任务,但给我的真多具有挑战性,我将不胜感激一些这方面的帮助。
感谢您的帮助!
答案 0 :(得分:2)
您可以使用spark.sql("select DATE_FORMAT(CAST(1546268400 AS TIMESTAMP), 'MM/dd/YYYY HH:mm')").show(false)
和top
:
order by
有其他的方法,以及,如:
select top 1 r.*
from Rates as r
where client in ("Jhonsons", "General")
order by iif(client = "General", 2, 1)
答案 1 :(得分:0)
您可以将条件iif
语句与exists
运算符一起使用,以测试是否存在客户记录,作为where
子句的一部分,例如:
select r1.* from rates r1
where r1.client =
iif(exists (select 1 from rates r2 where r2.client = "Jhonsons"), "Jhonsons", "General")