跳到主要內容

發表文章

目前顯示的是 11月, 2017的文章

【TABLEAU】資料庫連接

🎯 TABLEAU連結資料庫:以MS SQL為例

【TABLEAU】INTRO

🎯 TABLEAU:商業視覺化智慧分析軟體

【SQL】不同來源也無關連可利用UNION

🎯 UNION / UNION ALL:合併多張表的欄位內容。 NOTE: UNION合併但會排除重復筆數;UNION ALL合併且不會排除重複筆數 NOTE2: 不論是哪一種合併,要確定表單的欄位數是一樣的,若欄位數不相同,則要特別指定需要挑選哪幾欄 (挑選後欄位數需一樣)

【SQL】利用JOIN精簡或擴大

🎯 INNER JOIN:精簡出共有的資料。 🎯 LEFT JOIN & RIGHT JOIN:以左邊/右邊的表為主結合出共有的資料。 🎯 FULL JOIN:列出所有表的全部資料。

【SQL】日期運算DATEDIFF & DATEADD

🎯 DATEDIFF:算出日期的間隔,傳回整數(可為正負號)。 用法:DATEDIFF ( datepart , startdate , enddate ) ► datepart:要計算的間隔單位 ► startdate & enddate:開始日期跟結束日期 EX ---直接利用函數處理某指定日期,亦可以換成日期欄位 SELECT DATEDIFF ( DAY,'2017-11-01','2017-11-14') AS 'DAYS' Rusult DAYS 13 🎯 DATEADD:將日期加上指定值,傳回日期。 用法:DATEADD (datepart , number , date ) ► datepart:要計算的間隔單位 ► number:指定數值 ► date :要被加上的原始日期 EX ---直接利用函數處理某指定日期,亦可以換成日期欄位 SELECT DATEADD ( MONTH,5,'2017-11-14') AS 'DATE' Rusult DATE 2018-04-14 00:00:00.000

【SQL】ISNULL用來對付NULL值

🎯 ISNULL函數:利用指定值找出NULL值。 用法:ISNULL( check_expression, replacement_value) ► check_expression:用來檢查的欄位、運算式...可以是任何類型。 ► replacement_value:檢查出check_expression內為NULL值須回傳的值。需要為可以轉換成check_expression的類型。 作為判斷條件 ---利用COSMETIC資料庫 USE [COSMETIC] GO SELECT [NAME], [SUBJECT], CASE WHEN ISNULL(B1.[CONTEXT],'') <>'' THEN B1.[CONTEXT] WHEN ISNULL(B2.[CONTEXT],'') <>'' THEN B2.[CONTEXT] ELSE B.[CONTEXT] --- 利用ISNULL去判斷,如果非NULL值,抓取不同欄位 FROM [dbo].[ORIGINAL] A LEFT JOIN [dbo].[DETAIL] B ON A.[PK] = B.[KEY] LEFT JOIN [dbo].[DETAILII] B1 ON B.[D1] = B1.[KEY] LEFT JOIN [dbo].[DETAILIII] B2 ON B.[D2] = B2.[KEY] Reference: http://sharedderrick.blogspot.tw/2012/06/t-sql-isnull.html