博主最近在學習使用oracle,前幾天寫代碼的時候有一個任務,查詢到某一列的合並數據並且要求不能相同,我在網上查了查原來可以使用wm_concat()這個函數來實現。
一、wm_concat()函數是oracle中獨有的,mysql中有一個group_concat()函數。
這兩個函數的作用是相同的,它們的功能是:實現行轉列功能,即將查詢出的某一列值使用逗號進行隔開拼接,成為一條數據。
下面我們就來實現一下:
我要把local_labour_name這個字段用逗號拼接成一條數據。
然后我們需要加上wm_concat()這個函數,但是我這邊加上的時候出現了問題:
這並不是我想要的結果,最后我看了看哪里出現了問題,原來是字段類型沒對上,我們這邊需要to_char()一下;
這個時候我們就得到了我們想要的結果。如果我們的查詢到的結果中有重復怎么辦?我們可以再前面加上distinct來去除重復。