mysql> select * from ((select * from (select 1,2,3,null as C4,null as C5, null as C6) A) U
NION ALL (select * from (select null as C1,null as C2,null as C3,4,5,6) B)) AS C;
+------+------+------+------+------+------+
| 1 | 2 | 3 | C4 | C5 | C6 |
+------+------+------+------+------+------+
| 1 | 2 | 3 | NULL | NULL | NULL |
| NULL | NULL | NULL | 4 | 5 | 6 |
+------+------+------+------+------+------+
2 rows in set (0.00 sec)
2010年10月15日金曜日
+ と array_merge の差
ラベル:
php
php -r "$a=array('10'=>array('b','c'),'sum'=>20);$b=array('10'=>array('b','d'),'count'=>100);var_dump($a+$b);"
array(3) {
[10]=>
array(2) {
[0]=>
string(1) "b"
[1]=>
string(1) "c"
}
["sum"]=>
int(20)
["count"]=>
int(100)
}
━━━━━━━━━━━━━━━━━━━━━━━━━━━━
php -r "$a=array('10'=>array('b','c'),'sum'=>20);$b=array('10'=>array('b','d'),'count'=>100);var_dump(array_merge($a,$b));"
array(4) {
[0]=>
array(2) {
[0]=>
string(1) "b"
[1]=>
string(1) "c"
}
["sum"]=>
int(20)
[1]=>
array(2) {
[0]=>
string(1) "b"
[1]=>
string(1) "d"
}
["count"]=>
int(100)
}
array(3) {
[10]=>
array(2) {
[0]=>
string(1) "b"
[1]=>
string(1) "c"
}
["sum"]=>
int(20)
["count"]=>
int(100)
}
━━━━━━━━━━━━━━━━━━━━━━━━━━━━
php -r "$a=array('10'=>array('b','c'),'sum'=>20);$b=array('10'=>array('b','d'),'count'=>100);var_dump(array_merge($a,$b));"
array(4) {
[0]=>
array(2) {
[0]=>
string(1) "b"
[1]=>
string(1) "c"
}
["sum"]=>
int(20)
[1]=>
array(2) {
[0]=>
string(1) "b"
[1]=>
string(1) "d"
}
["count"]=>
int(100)
}
2010年10月11日月曜日
wordで変更履歴またはコメントがあるページだけprintするマクロです
ラベル:
vba
'wordで変更履歴またはコメントがあるページだけprintするマクロです '****************************************************************************** ' Function : printPagesHavingChangesOrComments ' Description : メイン処理 ' Parameter : なし ' Example : ' Return Value : なし ' Author: kagen88@gmail.com/ 2010/10/10 '****************************************************************************** Sub printPagesHavingChangesOrComments() Dim pageNum As Integer Dim pageArray() As Variant ReDim Preserve pageArray(0) 'ここはポイント、「'文章の先頭から検索を続けますか?」がPOPUPされる Application.DisplayAlerts = True 'カーソルを最初に移動 Selection.HomeKey Unit:=wdStory '無限ループにならないように保険 Dim i As Integer i = 1 '文章の先頭から検索を続けますかに「いいえ」をクリック、エラーを起こす 'ここのエラー実はループの終わり On Error GoTo finish Do i = i + 1 '次の変更またはコメントに移動 WordBasic.NextChangeOrComment 'その時のページ番号を取得 pageNum = Selection.Information(wdActiveEndPageNumber) 'そのページ番号は既にプリント要ページ番号リストに登録していますか If Not uInArrayStr(pageNum, pageArray) Then ReDim Preserve pageArray(UBound(pageArray) + 1) pageArray(UBound(pageArray)) = pageNum End If Loop While i < 500 finish: MsgBox "検索完了" Dim strPage As String Dim sep As String sep = "" If IsArray(pageArray) Then Dim x As Integer For x = 1 To UBound(pageArray) strPage = strPage & sep & pageArray(x) sep = "," Next res = MsgBox("プリントしますか?", vbOKCancel) If res = vbOK Then Application.PrintOut FileName:="", Range:=wdPrintRangeOfPages, Item:= _ wdPrintDocumentWithMarkup, Copies:=1, Pages:=strPage, PageType:= _ wdPrintAllPages, ManualDuplexPrint:=False, Collate:=True, Background:= _ True, PrintToFile:=False, PrintZoomColumn:=0, PrintZoomRow:=0, _ PrintZoomPaperWidth:=0, PrintZoomPaperHeight:=0 End If End If End Sub '****************************************************************************** ' Function : uInArrayStr ' Description : 文字列が配列に入ってるかどうかをチェック ' Parameter : 文字列、配列 ' Example : ' Return Value : ' True:あり ' False:なし ' Author: kagen88@gmail.com/ 2010/10/10 '****************************************************************************** Public Function uInArrayStr(ByVal strTarget As String, ByVal arrArray As Variant) As Boolean Dim blnReturn As Boolean Dim intX As Integer blnReturn = False If IsArray(arrArray) Then For intX = 0 To UBound(arrArray) If arrArray(intX) = strTarget Then blnReturn = True Exit For End If Next End If uInArrayStr = blnReturn End Function
2010年10月9日土曜日
Word(VBA)Revision.Type プロパティ
ラベル:
vba
Word(VBA)Revision.Type プロパティ
const | val |
wdNoRevision | 0 |
wdRevisionDelete | 2 |
wdRevisionInsert | 1 |
wdRevisionParagraphProperty | 10 |
wdRevisionReconcile | 6 |
wdRevisionSectionProperty | 12 |
wdRevisionStyleDefinition | 13 |
wdRevisionConflict | 7 |
wdRevisionDisplayField | 5 |
wdRevisionParagraphNumber | 4 |
wdRevisionProperty | 3 |
wdRevisionReplace | 9 |
wdRevisionStyle | 8 |
wdRevisionTableProperty | 11 |
2010年10月7日木曜日
JavaScript の判断式はshort式ではない、$ is not defined
ラベル:
error,
javascript,
罠
これはダメ:
if($('#onSiteChangeReloadPage').size()>0 && $('#onSiteChangeReloadPage').val()==1){
エラーメッセージがでる:$ is not defined
これにすべき:
if($('#onSiteChangeReloadPage').size()>0){
if($('#onSiteChangeReloadPage').val()==1){
if($('#onSiteChangeReloadPage').size()>0 && $('#onSiteChangeReloadPage').val()==1){
エラーメッセージがでる:$ is not defined
これにすべき:
if($('#onSiteChangeReloadPage').size()>0){
if($('#onSiteChangeReloadPage').val()==1){
php isset テスト
ラベル:
php
php -r "$aa=array('hh'=>null);echo (isset($aa)?'OK':'NG');"
OK
php -r "$aa=array('hh'=>false);echo (isset($aa['hh'])?'OK':'NG');"
OK
php -r "$aa=array('hh'=>null);echo (isset($aa['hh'])?'OK':'NG');"
NG
php -r "$aa=array('hh'=>null);echo (isset($aa['bb'])?'OK':'NG');"
NG
php -r "$aa=array('hh'=>'');echo (isset($aa['hh'])?'OK':'NG');"
OK
php -r "$aa=array('hh'=>0);echo (isset($aa['hh'])?'OK':'NG');"
OK
php -r "$aa=array('hh'=>0);echo ($aa['hh']?'OK':'NG');"
NG
php -r "$aa=array('hh'=>null);echo ($aa['hh']?'OK':'NG');"
NG
php -r "$aa=array('hh'=>false);echo ($aa['hh']?'OK':'NG');"
NG
php -r "$aa=array('hh'=>'');echo ($aa['hh']?'OK':'NG');"
NG
php -r "$aa=array('hh'=>1);echo ($aa['hh']?'OK':'NG');"
OK
OK
php -r "$aa=array('hh'=>false);echo (isset($aa['hh'])?'OK':'NG');"
OK
php -r "$aa=array('hh'=>null);echo (isset($aa['hh'])?'OK':'NG');"
NG
php -r "$aa=array('hh'=>null);echo (isset($aa['bb'])?'OK':'NG');"
NG
php -r "$aa=array('hh'=>'');echo (isset($aa['hh'])?'OK':'NG');"
OK
php -r "$aa=array('hh'=>0);echo (isset($aa['hh'])?'OK':'NG');"
OK
php -r "$aa=array('hh'=>0);echo ($aa['hh']?'OK':'NG');"
NG
php -r "$aa=array('hh'=>null);echo ($aa['hh']?'OK':'NG');"
NG
php -r "$aa=array('hh'=>false);echo ($aa['hh']?'OK':'NG');"
NG
php -r "$aa=array('hh'=>'');echo ($aa['hh']?'OK':'NG');"
NG
php -r "$aa=array('hh'=>1);echo ($aa['hh']?'OK':'NG');"
OK
登録:
投稿 (Atom)