1. 程式人生 > >mysql豎表查詢結果展示為橫表結構

mysql豎表查詢結果展示為橫表結構

方案一:


SELECT 
SUM(aa) as aa,
SUM(bb) as bb
FROM (
SELECT
dataTime,
metric_value as aa,
0 as bb
FROM UserTable
WHERE 
metric_code='aa'
UNION ALL

SELECT 
dataTime,
0 as aa,
metric_value as bb
FROM 
UserTable
WHERE 
metric_code='bb'
) boss 
WHERE 1=1
AND dataTime>='2018-05-01'

方案二:

SELECT 
a.dataTime,
MAX(case a.metric_code when 'aa' then a.metric_value else 0 end) aa,
MAX(case a.metric_code when 'bb' then a.metric_value else 0 end) bb
FROM(
	SELECT
	DATE_FORMAT(dataTime,'%Y-%m') dataTime,
	metric_code,
	sum(metric_value) metric_value
	FROM UserTable
	WHERE 
	dataTime>='2018-05-01'
	AND
	(metric_code='aa'
	OR metric_code='bb')
	GROUP BY DATE_FORMAT(dataTime,'%Y-%m'),metric_code
)a GROUP BY dataTime

相關推薦

mysql查詢結果展示結構

方案一: SELECT SUM(aa) as aa, SUM(bb) as bb FROM ( SELECT dataTime, metric_value as aa, 0 as bb FROM UserTable WHERE metric_code='aa' UNI

sql將查詢結果建立

1.sqlserver中,使用: select * into tab_new from tab_old SELECT * into anzhiresult from (select * from factdownloads_new where storename='anz

mysql縱錶轉換進行多之間的關聯查詢

1、資料庫的表可以分為兩類:縱表與橫表 縱表:表中欄位與欄位的值採用key——value形式,即表中定義兩個欄位,其中一個欄位裡存放的是欄位名稱,另一個欄位中存放的是這個欄位名稱代表的欄位的值。 例如,下面這張project_audit_log表,其中date_type欄位表示為什麼時間型別

通過linux遠端連線mysql查詢結果中文亂碼小結

首先本地辦公環境為windows使用的是navicat連線的mysql navicat連線mysql時查詢結果正常 檢視編碼方式: mysql> show variables like ‘%character%‘; +----------------------

mysql在把子查詢結果作為刪除中資料的條件,mysql不允許在子查詢的同時刪除原資料

** 目標表和原表一致 MYSQL不支援如此操作 資料庫不能邊查詢邊刪除 ** delete from push_msg_overview where id in ( select id from push_msg_overview where pus

Mysql查詢結果增加序列號

先給出實現邏輯:SELECT (@i:[email protected]+1) as 序號,goods.* from goods LEFT JOIN stock_io ON goods

mysql學習- 將查詢結果加上其他鍵值插入到

+------------------+-------------+------+-----+---------+----------------+ | Field          | Type       | Null | Key | Default | Extra        | +--------

mysql查詢結果拼接json

效果如下: 資料表 查詢結果 查詢SQL語句 SELECT attr_id, CONCAT( '{', GROUP_CONCAT( CONCAT('"', id, '"

mysql distinct 去掉查詢結果重複記錄 可用於多張連線查詢

在專案中遇到了這個問題,研究了一下,覺得還是很有必要做一下筆記: DISTINCT 關鍵字解釋 使用 DISTINCT 關鍵字可以去掉查詢中某個欄位的重複記錄,具體欄位自己決定。 例子如下: 假設test_table表中有如下資料:

mysql 可以根據查詢結果插入到指定的

MySQL可以根據查詢到的記錄集插入到指定的表中其例子為: 首先闡述三張表的結構: s(sno,sname.sex,age,dept)   //學生資訊表 c(cno,cname,tname) 

Mysql查詢結果匯出Excel的幾種方法

本想直接轉發,奈何密碼忘記了。原文複製過來吧。 原文地址:https://www.cnblogs.com/qiaoyihang/p/6398673.html 【我使用的是方法二】 本文地址:http://www.cnblogs.com/qiaoyihang/p/6398

MySQL的JDBC判斷查詢結果是否空以及獲取查詢結果行數的方法

判斷查詢結果是否為空 在JDBC中沒有方法hasNext去判斷是否有下一條資料,但是我們可以使用next方法來代替。 看next方法的官方解釋: boolean next() throws Moves the cursor forward one row

MySQL之將查詢結果生成新

SQL語句示例: CREATE TABLE school SELECT * FROM class CREARE負責建立表,表的內容是SELECT語句的查詢結果 如果我們想結合兩個表的相同欄位並生成新表,SQL語句如下: CREATE TABLE school SE

0003-MYSQL用一個查詢結果去更新另一個

在MYSQL中經常遇到連線查詢,但是連線更新如何操作呢。下面給出一種標準連線更新的SQL UPDATE tpc_custody_history t INNER JOIN (SELECTid,`cust

mysql 怎麼把查詢結果作為名繼續查詢

SELECT COUNT(1) FROM (select 欄位名 from 表名1 where  條件  group by 欄位名) as 表名2; 注: 必須要給查詢的結果集設定一個表名即(表名2)否則mysql會報錯。  

利用反射技術將查詢結果封裝對象

long trace leg war sel 反射 test get col public class ORMTest extends HttpServlet { private static final long se

MySql cmd下的學習筆記 —— 有關多查詢的操作(多查詢練習題及union操作)

image ins myisam name sam row div mysq gin 先建立一張 m 表 mysql> create table m ( -> mid int, -> hid int, -> gid in

sql 多查詢結果驗證

插入數據 create reat sql語句 ont creat 卡爾 nbsp 總結 1.笛卡爾積 定義: 設A,B為集合,用A中元素為第一元素,B中元素為第二元素構成的有序對,所有這樣的有序對組成的集合 ,叫做A與B的笛卡爾積,記作AxB. 上面有一個很關鍵的詞為“有序

mysql中給查詢結果新增序號列

 生成一個欄位(非表中欄位)用以記錄排序   【類比為oracle資料庫中的rownum】     MySQL中一個表(表名:stuscore)     欄位有:id(主鍵)、stuid(學號)、sname(學生姓名)、subject(課程名稱)、score(分

X++: 將查詢結果轉換通用的JSON物件

public static FreeStyle.D365Tools.GMap getCursorValues(Common _table,Map pvSchema) { FreeStyle.D365Tools.GMap lvMap=FreeStyle.D365Tool