Text::Record::Deduper
在CPAN上找到一個很酷的Package

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

tomato timer
 
話說我的工作效率最近一直處於不佳的狀態
來試試之前有看過的蕃茄計時理論(Pomodoro Technique;簡體中文官方網頁)

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

1、查閱資料表中多餘的重複記錄,重複記錄是根據單個欄位(peopleId)來判斷
select * from people
where peopleId in (select   peopleId  from   people  group  by   peopleId  having  count(peopleId) > 1)
2、刪除表中多餘的重複記錄,重複記錄是根據單個欄位(peopleId)來判斷,只留有rowid最小的記錄
delete from people
where peopleId  in (select   peopleId  from people  group  by   peopleId   having  count(peopleId) > 1)
and rowid not in (select min(rowid) from   people  group by peopleId  having count(peopleId )>1)
3、查閱資料表中多餘的重複記錄(多個欄位)
select * from vitae a
where (a.peopleId,a.seq) in   (select peopleId,seq from vitae group by peopleId,seq  having count(*) > 1)
4、刪除表中多餘的重複記錄(多個欄位),只留有rowid最小的記錄
delete from vitae a
where (a.peopleId,a.seq) in   (select peopleId,seq from vitae group by peopleId,seq having count(*) > 1)
and rowid not in (select min(rowid) from vitae group by peopleId,seq having count(*)>1)
5、查閱資料表中多餘的重複記錄(多個欄位),不包含rowid最小的記錄
select * from vitae a
where (a.peopleId,a.seq) in   (select peopleId,seq from vitae group by peopleId,seq having count(*) > 1)
and rowid not in (select min(rowid) from vitae group by peopleId,seq having count(*)>1)
(二)
比方說
在A表中存在一個欄位“name”,
而且不同記錄之間的“name”值有可能會相同,
現在就是需要查詢出在該表中的各記錄之間,“name”值存在重複的項;
Select Name,Count(*) From A Group By Name Having Count(*) > 1
如果還查性別也相同大則如下:
Select Name,sex,Count(*) From A Group By Name,sex Having Count(*) > 1
(三)
方法一
declare @max integer,@id integer
declare cur_rows cursor local for select 主欄位,count(*) from 表名 group by 主欄位 having count(*) >; 1
open cur_rows
fetch cur_rows into @id,@max
while @@fetch_status=0
begin
select @max = @max -1
set rowcount @max
delete from 表名 where 主欄位 = @id
fetch cur_rows into @id,@max
end
close cur_rows
set rowcount 0
  方法二
  有兩個意義上的重複記錄,一是完全重複的記錄,也即所有欄位均重複的記錄,二是部分關鍵字段重複的記錄,比如Name欄位重複,而其他欄位不一定重複或都重複可以忽略。
  1、對於第一種重複,比較容易解決,使用
select distinct * from tableName
  就可以得到無重複記錄的結果集。
  如果該表需要刪除重複的記錄(重複記錄保留1條),可以按以下方法刪除
select distinct * into #Tmp from tableName
drop table tableName
select * into tableName from #Tmp
drop table #Tmp
  發生這種重複的原因是表設計不周產生的,增加唯一索引列即可解決。
  2、這類重複問題通常要求保留重複記錄中的第一條記錄,操作方法如下
  假設有重複的欄位為Name,Address,要求得到這兩個欄位唯一的結果集
select identity(int,1,1) as autoID, * into #Tmp from tableName
select min(autoID) as autoID into #Tmp2 from #Tmp group by Name,autoID
select * from #Tmp where autoID in(select autoID from #tmp2)
  最後一個select即得到了Name,Address不重複的結果集(但多了一個autoID欄位,實際寫時可以寫在select子句中省去此列)
(四)查詢重複
select * from tablename where id in (
select id from tablename
group by id
having count(id) > 1
)

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

#!/bin/bash
# FTP backup transfer script
# For Use to transfer backup file to FTP Server
#開始定義下面所會使用到的變數
##FTP主機
hostip="192.168.1.252"
##時間參數 年月日
today=`date +%Y%m%d`
##FTP主機 登錄帳號密碼
fusername="fdzone"
fpasswd="123456"
##本地端備份位置
basedir="/home/backup"
##遠端FTP主機的路徑  如果直接複製在 根目錄 無須修改
remodir="."
##定義 備份檔案 檔名
filename="$today"_trade.tgz
filename2="$today"_fin.tgz
filename3="$today"_fax.tgz
filename4="$today"_sub.tgz
##讓服務器重啟
#/etc/rc.d/init.d/smb restart
cd $basedir
#製作當天紀錄
echo "$today" DB1 Backup >> "$basedir"/backup.log
echo "$today" DB1 Backup >> "$basedir"/backup_err.log
##開始將需要每日備份資料夾打包成tgz
#tar -zcvf $filename /home/dbt6/TRADE6 > "$basedir"/backup.log 2> "$basedir"/backup_err.log
#tar -zcvf $filename4 /home/dbt6/SUB > "$basedir"/backup.log 2> "$basedir"/backup_err.log
#tar -zcvf $filename3 /home/dbt6/FAX > "$basedir"/backup.log 2> "$basedir"/backup_err.log
#tar -zcvf $filename2 /home/fin > "$basedir"/backup.log 2> "$basedir"/backup_err.log
####
##
##開始針對需要遠端備份的資料夾 進行上傳
ncftpput -u "$fusername" -p "$fpasswd" "$hostip" "$remodir" "$filename" >> "$basedir"/backup.log 2>> "$basedir"/backup_err.log
ncftpput -u "$fusername" -p "$fpasswd" "$hostip" "$remodir" "$filename2" >> "$basedir"/backup.log 2>> "$basedir"/backup_err.log
ncftpput -u "$fusername" -p "$fpasswd" "$hostip" "$remodir" "$filename3" >>"$basedir"/backup.log 2>> "$basedir"/backup_err.log
ncftpput -u "$fusername" -p "$fpasswd" "$hostip" "$remodir" "$filename4" >> "$basedir"/backup.log 2>> "$basedir"/backup_err.log
##把 每日備份的記錄檔 寄至管理者郵件信箱
mail -s "$today_ Backup List " ken.sd.hsu@gmail.com < /home/backup/backup.log

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



Ensembl Core API Tutorial
Perl modules documentation for Ensembl
I wanna to retrieve all the gene sequences through Ensembl API.

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



http://eutils.ncbi.nlm.nih.gov/entrez/query/static/esearch_help.html
It's very useful for guys who want to download the papers abstract from PubMed.
It's the source code that I modified from other people.

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

輸在人性
 
我還是被自己打敗了
當獲利超過預期時,就會想說是否還有上漲的空間

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

我的工作機系統是CentOS 5.4,但是他的PHP版本還是很老舊
php -v
PHP 5.1.6 (cli) (built: Jan 13 2010 17:09:42)
Copyright (c) 1997-2006 The PHP Group
Zend Engine v2.1.0, Copyright (c) 1998-2006 Zend Technologies

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

API - Application Programming Interface
[維基百科的解釋]
應用程式介面(Application Programming Interface,簡稱API),又稱為應用編程介面,就是軟體系統不同組成部分銜接的約定。由於近年來軟體的規模日益龐大,常常會需要把複雜的系統劃分成小的組成部分,編程介面的設計十分重要。程式設計的實踐中,編程介面的設計首先要使系統的職責得到合理劃分。良好的介面設計可以降低系統各部分的相互依賴,提高組成單元的內聚性,降低組成單元間的耦合程度,從而提高系統的維護性和擴充套件性。

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



http://cakephp.org/
CakePHP
 

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

用手指揮電器 跟遙控器說掰掰
中時 更新日期:2010/01/13 02:44 蔡鵑如/綜合報導

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

jquery-list

http://jquerylist.com/ 此網站整理了二百五十多個 jQuery 插件,分門別類

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

Blog Stats
⚠️

成人內容提醒

本部落格內容僅限年滿十八歲者瀏覽。
若您未滿十八歲,請立即離開。

已滿十八歲者,亦請勿將內容提供給未成年人士。