2013 /01/25
1.取得第一个不为空的值。(函数在项目中的实际应用)
COALESCE(a,b,c)这个函数我之前只在书上读到过,这次是第一次在项目中使用这个函数。
设计的要求如下:
如果该用户的「代表用户ID」,使用代表用户ID作为之后操作的查询条件,
否则使用「用户ID」作为查询条件。
实现如下:
COALESCE(C.top_user_id,A.user_id) AS "userId"
总结:
这段代码虽然看起来没有什么,
但是如果你对SQL函数不熟悉,很容易吧判断放到java逻辑中去实现。
========================================================================
好处:
这种写法的高明之处在于,一下子就返回了你后面查询需要的用户ID,不必再java逻辑中判断。