藍色小惡魔 (Forum: SQL)
2024-03-29T16:00:01+08:00
ATOM Feed of 藍色小惡魔 (Forum: SQL)
Copyright by this site owner
藍色小惡魔 Editor
http://www.imp.idv.tw/play/forum/rsssummary
mvnForum Feed Generator 1.0.2-GA
怎樣用 SQL 把多筆資料的值串成一個字串
http://www.imp.idv.tw/play/forum/viewthread?thread=3240
2013-11-22T07:07:27+08:00
2016-09-21T08:45:30+08:00
[size=3]你可以一個一個串... 如果筆數一樣多的話 >"<
也可以寫個迴圈跑一跑也不錯...
下面這個方法提供大家參考參考 ^^
為了方便大家在 MSSQL 排除萬難,不會因為資料型態問題鬼遮眼,所以把語法以 MS SQL 專屬欄位型態宣告... 其他資料庫請自行舉一反三,真的有問題留言告知,小惡魔來出面處理~[/size]
[code]
[color=blue]declare[/color] @str [color=blue]nvarchar[/color]([color=green]max[/color])
[color=blue]select[/color]
@str
= [color=green]case[/color] [color=blue]when [/color] @str ...
jieh
MS SQL 自動編號(identity)歸零(reset)
http://www.imp.idv.tw/play/forum/viewthread?thread=788
2007-05-30T10:36:21+08:00
2016-07-28T08:30:31+08:00
[size=3]簡單的指令,卻常常有人需要找他 ^^...
[code]DBCC CHECKIDENT('dbo.table_name', RESEED, 0)[/code]
範例:DBCC CHECKIDENT(CashCardDailyRpt, RESEED, 0)
CashCardDailyRpt 是一個 Table
[b]其他對你有幫助的SQL文章:[/b]
. 用 SQL 亂數取資料:
http://www.imp.idv.tw/play/forum/viewthread?thread=2093
. 用 SQL 把數字補 0:
http://www.imp.idv.tw/play/forum/viewthread?thread=741
. MS SQL 清除 LOG 並縮減空間的語法:
...
jieh
MS SQL 資料庫備份語法(database mssql backup script)
http://www.imp.idv.tw/play/forum/viewthread?thread=2908
2011-09-16T08:49:49+08:00
2016-07-27T09:42:41+08:00
[size=4]關鍵語法就是 backup database [@db_name] to disk = '@path_filename'
而以下範例我將檔明訂為 資料庫名稱 + 時間戳記 (yyyymmddhhmuss),檔名原則就看自己怎麼湊囉~~
一、簡單的範例(mssql backup script example):單一資料庫備份
[code]declare @TSQL varchar(4000), @db_name varchar(50), @DirectoryPath varchar(50), @Timestamp varchar(20)
set @DirectoryPath = 'D:\MSSQL\Backup\'
set @db_name = 'DASP-SIT'
set @Timestamp = convert(char(8), ...
jieh
用 SQL 把數字補 0
http://www.imp.idv.tw/play/forum/viewthread?thread=741
2007-03-19T10:37:10+08:00
2016-07-27T08:36:38+08:00
[size=3]剛剛有個 [:@)] 寫了個補 0 的 SQL 問我怎麼寫不出來
主要當然是他沒把數字轉字串所以 SQL 很雞婆會自動轉回數字
其次是他的技巧是 先判斷數字的長度 然後再不斷用 case-when 補字串 '000...'
換句話說 如果最大可能補 10 個 0 他的 SQL 就要寫 10 組 case-when
經過本大師的指導 只要以下這行就搞定了...
[quote]substring('0000000000', 1, 10 - len(a)) + a[/quote]
所以啊... 沒有 java 想弄個補 0 其實也不難喔!!!
[color=red](轉貼時請加註來源)[/color] ...
jieh
MS SQL 清除 LOG 並縮減空間的語法(SQL Script)
http://www.imp.idv.tw/play/forum/viewthread?thread=990
2008-01-16T01:31:01+08:00
2016-07-27T05:08:36+08:00
[size=4]其實有比較簡短的語法 就是 SQL 內定的 SP [:))] 寶寶知道 但是寶寶先不說
又臭又長的 只要把有中文說明的部份改成你要的對象
[code]SET NOCOUNT ON
DECLARE @LogicalFileName sysname, @MaxMinutes INT, @NewSize INT
USE {DBName ex HRMS} -- 要操作的資料庫名
SELECT
@LogicalFileName = '{Log file name ex HRMS_Log}', -- 日誌文件名
@MaxMinutes = 10, -- Limit on time allowed to wrap log. (M)
@NewSize = 1 -- 你想設定的日誌文件的大小(M)
-- Setup / ...
jieh
自動重新啟動資料庫工作排程
http://www.imp.idv.tw/play/forum/viewthread?thread=2191
2009-11-23T15:44:42+08:00
2013-07-23T17:44:31+08:00
[size=1][color=silver]MS SQL 教學 [/color][/size]
[size=3]MIS 或 DBA 經常會設計定時抓取資料的 Schedule SQL Job,但因為上游資料來源(或程式)延遲或失敗,過了 Job 執行時間也許才差幾秒幾分鐘或可容許的延遲時間內來源資料變已產生完畢了,可是定時抓取的 SQL Job 早已停工,此時 User 來上工了發現系統有問題通知 MIS 處理,這時也只能癡癡地等上游資料跑完後,MIS 再手動執行 SQL JOB... 或者更慘的是,假日被急摳來處理...!!
MIS 轄下受連累的系統因為資料不夠新鮮以致使用單位無法作業,只好吃下問題單 ="=... 接著安排人跟催上遊甚麼時候補好資料庫。
為了能安心休假只好下海找解套......
咱們工程師只會寫程式解決問題所以 SQL ...
jieh
[筆記] SQL 日期時間格式轉換(各種資料庫 Convert Date Time to string)
http://www.imp.idv.tw/play/forum/viewthread?thread=1372
2008-06-26T08:33:03+08:00
2011-02-25T16:11:35+08:00
[size=4]以下是小惡魔整理過去工作經驗較常用的[b]日期格式轉換[/b]的隨手筆記,簡化記憶和尋找,並非每個資料庫僅提供這些格式而已,而是工作上設計經驗和客戶需求常會遇到的部份記錄下來...
當作是工具收藏到書籤內,挺好用的!
[list][b]MS SQL[/b]
[color=darkblue]小惡魔系統設計慣性用法[/color]
YYYY-MM-DD (2008-06-26):CONVERT(CHAR(10), GETDATE(), 120)
HH:mm:SS (15:49:34):CONVERT(CHAR(8), GETDATE(), 108)
[/color]
[*] MM DD YYYY (06 26 2008):CONVERT(CHAR(10), GETDATE(), 100)
[*] MM/DD/YYYY ...
jieh
MySQL 欄位型態規格表
http://www.imp.idv.tw/play/forum/viewthread?thread=2749
2011-02-17T05:30:38+08:00
2011-02-17T05:30:38+08:00
MySQL: MySQL Field Types
更新為 5.5
mysql 5.5 version Data Type Storage Requirements
http://dev.mysql.com/doc/refman/5.5/en/storage-requirements.html
------
MySQL Supports the following Field Types in version 3.x of MySQL.
雖然版本比較舊不過先參考,等找到更新的再更新。
http://www.abbeyworkshop.com/howto/lamp/my_fieldtypes/index.html
jieh
MySQL 字串合併、字串連接 語法 CONCAT
http://www.imp.idv.tw/play/forum/viewthread?thread=2364
2010-04-07T07:54:40+08:00
2010-04-07T07:54:40+08:00
[size=1][color=silver]SQL 教學 [/color][/size]
[size=4]
MySQL 需要欄位合併的時候是不能用 select 欄位1 + 欄位2 from table 的語法
要使用 CONCAT(欄位或字串1, 欄位或字串2, 欄位或字串3, ...)
我測試的 MySQL 資料庫版本為 5.1
[code]SELECT
CONCAT('交易時間:', T_DATE, '@', T_TIME) as T_DATETIME,
T_DATE,
T_TIME
FROM MyTransaction[/code]
要注意的一個原則,當你的欄位或參數有其中一個為 null 則傳回結果即為 null,例如:
SELECT CONCAT('STR1', null, 'STR2')
參考自 ...
jieh
MS SQL 取亂數
http://www.imp.idv.tw/play/forum/viewthread?thread=2321
2010-03-01T14:51:21+08:00
2010-03-01T14:51:21+08:00
[size=1][color=silver]MS SQL 教學 [/color][/size]
今天尿酸異常客氣來問 SQL 是不是能取亂數,當我跟他說完我只會寫程式,不會用 MS SQL function 之後,我要尿酸把找到的 function 給我研究看看,結果他開始胡言亂語說不知道沒關係,不用要花時間幫研究 %^^(!*#&_*#$&#_...... (以下之ㄓㄨ之詞省略),和平常的尿酸不一樣。
最後還是逼他交出來了 : rand()
尿酸的問題是怎麼控制讓他在 1-48 之內?
唉~大師說得沒錯:《[url=http://www.dotblogs.com.tw/blueimp/archive/2010/02/18/n-2010021802.aspx]程式設計的兩個觀點:架構狂還是效率狂?[/url] 》...
看到這個 function ...
jieh
善待MySQL 甲骨文提十大保證
http://www.imp.idv.tw/play/forum/viewthread?thread=2225
2009-12-19T11:02:28+08:00
2009-12-19T11:02:28+08:00
先前歐盟由於不相信甲骨文買了昇陽之後會善待MySQL,因此11月時對此一併購案正式投下反對票。不過近來雙方關係顯然稍有解凍,甲骨文週一對客戶、開發者與MySQL用戶提出十大保證。
甲骨文承諾會比昇陽時期投入更多資金在MySQL的發展,且顧問董事會也會納入MySQL客戶。甲骨文另表示不會要求客戶以付費方式來取得商業MySQL授權的支援,且會提供客戶彈性的支援合約。
此外,它也提及第三方開發者的MySQL儲存引擎授權與著作權議題,承諾會保持MySQL Pluggable Storage Engine Architecture的開放與彈性,且不需商業授權就能使用該儲存引擎APIs。
........
...
jieh
Reporting Service 關閉報表匯出選項
http://www.imp.idv.tw/play/forum/viewthread?thread=2098
2009-07-25T14:47:47+08:00
2009-07-25T14:47:47+08:00
[size=1][color=silver]MS SQL 教學 [/color][/size]
[img]http://files.dotblogs.com.tw/jimmyyu/0907/SQLServer_14D6F/image_4.png[/img]
Reporting 的報表選項 夯不啷噹 的有上面那麼多項,未必都會用到,如果你覺得很礙眼,有辦法把它取消掉...
在 ReportServer 的安裝路徑下找到 rsreportserver.config,這個檔案是 Report Server 的組態設定檔,路徑舉例如下:
c:\Program Files\Microsoft SQL Server\MSSQL.3\Reporting Services\ReportServer\
找到 Render 這個Tag,看到 <Extension ...
jieh
利用簡單的語法來還原資料庫
http://www.imp.idv.tw/play/forum/viewthread?thread=2094
2009-07-23T16:53:54+08:00
2009-07-23T16:53:54+08:00
[size=1][color=silver]MS SQL 教學 [/color][/size]
希望我們除了資料庫伺服器大量搬移的時候會用上,其他時候就免了吧!
[code]Use master
GO
RESTORE DATABASE dbName -- 欲Restore的名稱
FROM DISK = 'D:\dbName.BAK' -- 備份檔
WITH replace,
MOVE 'dbName' TO 'C:\SQL2005\MSSQL.1\MSSQL\Data\dbName.mdf', -- 需修改Path
MOVE 'dbName_Log' TO 'C:\SQL2005\MSSQL.1\MSSQL\Data\dbName_log.ldf' -- 需修改Path
[/code]
jieh
SQL Random 亂數取資料
http://www.imp.idv.tw/play/forum/viewthread?thread=2093
2009-07-23T16:52:26+08:00
2009-07-23T16:52:26+08:00
[size=4]我笑了...
前幾天剛好有讀書看到怎麼用 SQL 亂數取資料,看完之後已經放在垃圾桶了~
因為如果要做系統我用程式就搞定了,如果在公司純 SQL 的工作都是在弄報表,實在也想不出有什麼理由需要用 SQL 來亂數取資料。
沒想到今天竟然有人打電話來問這個問題,傻了~
如果你想在 MS-SQL 隨機抽 10 筆資料,可以這樣寫...
[code]select top 10 * from table [color=red]order by [/color] newid();[/code]
記得那個 order by。
[/size]
[size=1][color=silver]MS SQL 教學 [/color][/size]
jieh
SQL 星期判斷
http://www.imp.idv.tw/play/forum/viewthread?thread=697
2006-12-25T03:33:15+08:00
2009-07-10T14:48:08+08:00
[size=1][color=silver]MS SQL 教學 [/color][/size]
[size=3]最近有個每個禮拜每天大同小異的 SQL 要執行 的工作 可是星期一到星期五執行的SQL有點小不同
星期一到五:中長放停復催
星期二到四:短放放停復催 (本週不重複發送)
星期一:短放停復催 (以核心主機為准發送)
星期二:協商成功
星期四:協商失敗
以上有些 SQL 內容大同小異 如果要透過 database 設定不同時成的 job 就有兩個討人厭的問題
1. 管理介面中一大堆 job 因為每個星期X執行的不同 最笨的就是依據以上規則 定出 五 組
2. 有些 SQL 幾乎相同 如果有改 還得知道要兩邊一起維護 麻煩
所以...
update 2011-04-22 (感謝同事 Mulk 提供)
[b]MySQL[/b]
...
jieh