oracle的神奇化学反应(行转列+获取表字段)

橘子+汽水=橘子汽水,∑(゚Д゚ノ)ノ好无聊!!!

火鸡+烤架=烤火鸡,ლ(´ڡ`ლ)还不错.

wm_concat()+表字段查询=(✪ω✪)会是啥呢?


 

wm_concat()函数,该函数可以把列值以","号分隔,并显示成一行。例子如下:

我有一个超级大的美食表CHINA_FOODS,里面包含了全国各地的美食,从地锅鸡、羊盘肠到红烧肉、臭豆腐...

今天加班写博客,写到这里的时候我感觉肥肠的饿,想点个外卖,于是想从美食表里面找个好吃的下单:

为了节省时间来写博客,我决定把下单和付款的重任交给我的小女朋友来执行。

对于我的这份将生命托付给她的信任,小女朋友表示受宠若惊并坚定的拒绝了我,因为懒癌晚期的她觉得截图没法直接复制到搜索框下单。

不过,事情还有转圜的余地,她表示如果我把截图改成字符串的形式的话,可以接受替我下单的请求。

“给我一秒钟!”我这样回复她。

一秒钟后,我写下了如下SQL

select wm_concat(food_name) from china_foods;

果断截图发送

 

 

什么情况,思索回忆...找到bug...打N遍电话反复承认不该发截图的错误...重新加回好友然后发送字符串类型的菜单。

 

这是要搞事情啊!为了吃的我先忍着,话说她怎么还懂全角半角这类的东西?

 一秒钟后,我再次写下了如下SQL

--select wm_concat(food_name) from china_foods;
select replace(wm_concat(food_name),',','') food_name from china_foods;

copy结果,发送

接下来的进展很顺利,小小的为难了我一下之后,小女朋友乖乖的给我去下单了,她果然还是爱我的(*^▽^*)

趁着外卖配送的时候,我又从A+V的角度小小的研究了一下wm_concat(),果然解锁了一个新姿势

--查询表A有哪些字段
SELECT column_name FROM all_tab_columns t WHERE t.OWNER='CMS_UAT' AND t.TABLE_NAME='COMPANY_TRF_LNS_F';

--将A表拥有的字段组装成字符串,代替传统的select * from TBL_A;
SELECT wm_concat(column_name) FROM all_tab_columns t WHERE t.OWNER='CMS_UAT' AND t.TABLE_NAME='COMPANY_TRF_LNS_F';

这样子的话,不管是写insert语句还是多字段的查询语句都很方便啊!

那么,我的外卖到了没有?

小女朋友:“那个...订单选错地址,外卖全送我这来了,要不我等你一起吃...”

问:教训小女朋友用什么姿势好?

 

再问:博主真的有小女朋友吗?

 

转载于:https://www.cnblogs.com/susuyu/p/6832646.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值