PIXNET Logo登入

工作需要筆記

跳到主文

歡迎光臨amychang2014在痞客邦的小天地

部落格全站分類:不設分類

  • 相簿
  • 部落格
  • 留言
  • 名片
  • 5月 12 週四 201611:46
  • SQL 排序置換

If 'Peter' and 'Steve' are unique in your table, this will do:
(繼續閱讀...)
文章標籤

amychang2014 發表在 痞客邦 留言(0) 人氣(9)

  • 個人分類:SQL
▲top
  • 12月 09 週三 201511:31
  • SQL學習資源


UPDATE from SELECT using SQL Server
http://stackoverflow.com/questions/2334712/update-...
(繼續閱讀...)
文章標籤

amychang2014 發表在 痞客邦 留言(0) 人氣(13)

  • 個人分類:SQL
▲top
  • 8月 14 週五 201515:55
  • SQL 查詢結果合併欄位

SELECT m.OrderID ,left(m.productIDs,len(m.productIDs)-1) as productIDsFinal from
(SELECT OrderID,(SELECT cast(ProductID AS NVARCHAR ) + ',' from [Order Details]
where OrderID = ord.OrderID
FOR XML PATH('')) as productIDs
from orders ord
GROUP BY orderid) M --這個M一定要加,不知道為啥
ORDER by M.OrderID
(繼續閱讀...)
文章標籤

amychang2014 發表在 痞客邦 留言(0) 人氣(373)

  • 個人分類:SQL
▲top
  • 8月 12 週三 201517:53
  • SQL ROW NUMBER

SELECT
ROW_NUMBER() OVER(ORDER BY CustomerID) AS ROWID
,*
FROM Orders
(繼續閱讀...)
文章標籤

amychang2014 發表在 痞客邦 留言(0) 人氣(31)

  • 個人分類:SQL
▲top
  • 8月 12 週三 201510:35
  • Split a comma separated string and loop it's values in SQL Server

DECLARE @valueList varchar(8000)
DECLARE @pos INT
DECLARE @len INT
DECLARE @value varchar(8000)

SET @valueList = 'aa,bb,cc,f,sduygfdctys,w,e,r,t,sd sdf sdf,yyy yyy yy,'

set @pos = 0
set @len = 0

WHILE CHARINDEX(',', @valueList, @pos+1)>0
BEGIN
set @len = CHARINDEX(',', @valueList, @pos+1) - @pos
set @value = SUBSTRING(@valueList, @pos, @len)
--SELECT @pos, @len, @value /*this is here for debugging*/

PRINT @value
--Here is you value
--DO YOUR STUFF HERE
--DO YOUR STUFF HERE
--DO YOUR STUFF HERE
--DO YOUR STUFF HERE
--DO YOUR STUFF HERE

set @pos = CHARINDEX(',', @valueList, @pos+@len) +1
END
http://techforpassion.blogspot.tw/2013/03/how-to-split-comma-separated-string-and.html
(繼續閱讀...)
文章標籤

amychang2014 發表在 痞客邦 留言(0) 人氣(22)

  • 個人分類:SQL
▲top
  • 8月 11 週二 201517:44
  • SQL slice string to row column

DECLARE @RowData VARCHAR(MAX);
SET @RowData = '1,2,3,;4,5,6,;7,8,9,;';

WITH Num1 (n) AS (SELECT 1 UNION ALL SELECT 1),
Num2 (n) AS (SELECT 1 FROM Num1 AS X, Num1 AS Y),
Num3 (n) AS (SELECT 1 FROM Num2 AS X, Num2 AS Y),
Num4 (n) AS (SELECT 1 FROM Num3 AS X, Num3 AS Y),
Nums (n) AS (SELECT ROW_NUMBER() OVER(ORDER BY n) FROM Num4),
SplitRows (row_data, rn) AS (
SELECT SUBSTRING(';' + @RowData + ';', n + 1,
CHARINDEX(';', ';' + @RowData + ';', n + 1) - n - 1),
n + 1 - LEN(REPLACE(LEFT(@RowData, n), ';', ''))
FROM Nums
WHERE SUBSTRING(';' + @RowData + ';', n, 1) = ';'
AND n < LEN(';' + @RowData + ';')),
SplitColumns (rn, column_data, column_idx) AS (
SELECT rn,
SUBSTRING(',' + row_data + ',', n + 1,
CHARINDEX(',', ',' + row_data + ',', n + 1) - n - 1),
n + 1 - LEN(REPLACE(LEFT(row_data, n), ',', ''))
FROM Nums
JOIN SplitRows
ON SUBSTRING(',' + row_data + ',', n, 1) = ','
AND n < LEN(',' + row_data + ',')),
Pivoted (col1, col2, col3) AS (
SELECT [1], [2], [3]
FROM SplitColumns AS S
PIVOT
(MAX(column_data) FOR column_idx IN ([1], [2], [3])) AS P)
SELECT col1, col2, col3
FROM Pivoted
WHERE col1 IS NOT NULL;
(繼續閱讀...)
文章標籤

amychang2014 發表在 痞客邦 留言(0) 人氣(28)

  • 個人分類:SQL
▲top
  • 8月 11 週二 201517:32
  • SQL slice string

CREATEFUNCTION dbo.splitstring (@stringToSplit VARCHAR(MAX))
RETURNS
@returnList TABLE([Name][nvarchar](500))ASBEGINDECLARE@name NVARCHAR(255)DECLARE@pos INT

WHILE CHARINDEX(',',@stringToSplit)>0BEGINSELECT@pos = CHARINDEX(',',@stringToSplit)SELECT@name = SUBSTRING(@stringToSplit,1,@pos-1)INSERTINTO@returnList
SELECT@name

SELECT@stringToSplit = SUBSTRING(@stringToSplit,@pos+1, LEN(@stringToSplit)-@pos)ENDINSERTINTO@returnList
SELECT@stringToSplit

RETURNEND
(繼續閱讀...)
文章標籤

amychang2014 發表在 痞客邦 留言(0) 人氣(83)

  • 個人分類:SQL
▲top
  • 8月 11 週二 201516:13
  • SQL select foreach

declare@id int,@stuff varchar(20)declare@tmp table(
id int
notnull, stuff varchar(20)primarykey(id))insert@tmp
select id, stuff from mastertable
where condition1 > condition2

selecttop1@id=id,@stuff=stuff from@tmp

while(@@rowcount>0)beginprint@stuff
deletefrom@tmp where id=@id
selecttop1@id=id,@stuff=stuff from@tmp
end
http://stackoverflow.com/questions/18827729/tsql-perform-code-for-each-row-of-an-select
(繼續閱讀...)
文章標籤

amychang2014 發表在 痞客邦 留言(0) 人氣(401)

  • 個人分類:SQL
▲top
  • 8月 07 週五 201511:08
  • SQL 取Insert流水號

declare@ids table(id int);
UPDATE Foo
SET Bar =1
OUTPUT INSERTED
.Id INTO@ids
WHERE Baz =2
(繼續閱讀...)
文章標籤

amychang2014 發表在 痞客邦 留言(0) 人氣(82)

  • 個人分類:SQL
▲top
  • 4月 22 週三 201514:32
  • T-SQL 查詢預存

ALTER PROCEDURE [dbo].[一般搜尋EX]
@函式名稱 NVARCHAR(255) = ''
,@程式語言 NVARCHAR(255) = ''
,@起始行 INT = 0
,@結束行 INT = 0
AS
BEGIN

SET NOCOUNT ON ;

DECLARE @語法 NVARCHAR(MAX) = ''
,@語法2 NVARCHAR(MAX) = ''
,@條件 NVARCHAR(1024) = ''
,@參數 NVARCHAR(1024) = ''
,@顯示欄位 NVARCHAR(512) = ''

SET @顯示欄位 =N'SELECT *'

SET @語法 = N' FROM (SELECT ROW_NUMBER() OVER (ORDER BY 內文流水號 DESC) ROWID,X2.*,X1.目錄名稱,X3.程式語言
FROM [目錄](NOLOCK) X1
LEFT JOIN [內文](NOLOCK) X2
ON X1.目錄流水號=X2.來源目錄
LEFT JOIN [程式語言](NOLOCK) X3
ON X2.程式語言id = X3.id
WHERE (1=1){0}
) A {1}';

SET @語法2 = @語法;
SET @語法 = @顯示欄位 + @語法;

IF @函式名稱 <> '' SET @條件 += N' OR (X2.函式名稱 LIKE ''%'+@函式名稱+'%'')';
IF @程式語言 <> '' SET @條件 += N' OR (X3.程式語言 LIKE ''%'+@程式語言+'%'')';


SET @參數 = N'@函式名稱 NVARCHAR(255),@程式語言 NVARCHAR(255),@起始行 INT,@結束行 INT';


SET @語法 = REPLACE(@語法,'{0}',@條件)
SET @語法2 = REPLACE(@語法2,'{0}',@條件)

SET @語法 = REPLACE(@語法,'(1=1) OR','(1=1) AND')
SET @語法2 = REPLACE(@語法2,'(1=1) OR','(1=1) AND')


-- 分頁
IF @起始行 > @結束行
BEGIN
SET @起始行 = 0
SET @結束行 = 0
END

IF @起始行 <> 0 AND @結束行 <> 0
BEGIN
SET @語法 = REPLACE(@語法,'{1}','WHERE ROWID BETWEEN @起始行 AND @結束行')
END
ELSE
BEGIN
SET @語法 = REPLACE(@語法,'{1}','')
END

PRINT @語法
EXEC Sp_ExecuteSQL @語法,@參數
,@函式名稱 = @函式名稱
,@程式語言 = @程式語言
,@起始行 = @起始行
,@結束行 = @結束行

-- 總筆數
SET @顯示欄位 = N'SELECT ISNULL(COUNT(*),0) AS 總數量'
SET @語法2 = @顯示欄位 + @語法2
SET @語法2 = REPLACE(@語法2,'{1}','')

PRINT ''
PRINT @語法2
EXEC Sp_ExecuteSQL @語法2,@參數
,@函式名稱 = @函式名稱
,@程式語言 = @程式語言
,@起始行 = @起始行
,@結束行 = @結束行

END





(繼續閱讀...)
文章標籤

amychang2014 發表在 痞客邦 留言(0) 人氣(10)

  • 個人分類:SQL
▲top
12»

個人資訊

amychang2014
暱稱:
amychang2014
分類:
不設分類
好友:
累積中
地區:

熱門文章

  • (1,233)c#移除HTML Tag
  • (543)ASP.NET C# 取得圖片長、寬by stream
  • (142)jQuery slideDown() Method 滑鼠滑入展開/收回
  • (32)[PhoneGap] 獲得目前地理位置
  • (26)jQuery取url變數
  • (13)社會創新
  • (8)C# Convert、Parse、TryParse、(int) 區別使用
  • (5)jQuery select ASP.NET Control
  • (3)Beauty Design
  • (2)INSERT、UPDATE FROM SELECT

文章分類

  • RWD (0)
  • JSON (1)
  • 物件導向 (1)
  • ASP.NET MVC (1)
  • JSON (1)
  • Google API (2)
  • IIS (3)
  • SQL (15)
  • CSR企業社會責任 (3)
  • PhoneGap (19)
  • Mobile (2)
  • Design (3)
  • CSS (38)
  • 其它 (18)
  • New Project (1)
  • jQuery (71)
  • MSSQL (12)
  • ASP.NET C# (136)
  • Facebook (5)
  • JavaScript (48)
  • 未分類文章 (1)

最新文章

  • 上傳前預覽
  • SQL 排序置換
  • 臨時網址
  • C# 載入資料夾內所有圖片
  • 判別行動裝置
  • 使用a 呼叫js 埋ga
  • C# 直接下載檔案
  • 圖片按鈕 input file
  • [轉貼]上傳檔案前,JavaScript檢查檔案格式、大小
  • css goTop

文章精選

文章搜尋

參觀人氣

  • 本日人氣:
  • 累積人氣: