我的評(píng)論
re: JUnit使用經(jīng)驗(yàn)(1)(2)(3) SYBIL@BLOGJAVA 2007-01-05 17:45
7.13 JOIN句法
MySQL支持下列用于SELECT語(yǔ)句的JOIN句法:
table_reference, table_reference
table_reference [CROSS] JOIN table_reference
table_reference INNER JOIN table_reference
table_reference STRAIGHT_JOIN table_reference
table_reference LEFT [OUTER] JOIN table_reference ON conditional_expr
table_reference LEFT [OUTER] JOIN table_reference USING (column_list)
table_reference NATURAL LEFT [OUTER] JOIN table_reference
{ oj table_reference LEFT OUTER JOIN table_reference ON conditional_expr }
上述最后的LEFT OUTER JOIN的句法只是為了與ODBC兼容而存在的。
一個(gè)表可以是使用aliasedtbl_name AS alias_name或tbl_name alias_name的起的別名。
mysql> select t1.name, t2.salary from employee AS t1, info AS t2
where t1.name = t2.name;
INNER JOIN和,(逗號(hào))在語(yǔ)義上是等價(jià)的,都是進(jìn)行一個(gè)在使用的表之間的全聯(lián)結(jié)。通常,你指定表應(yīng)該如何用WHERE條件聯(lián)結(jié)起來(lái)。
ON條件是可以用在一個(gè)WHERE子句形式的任何條件。
如果在一個(gè)LEFT JOIN中沒(méi)有右表的匹配記錄,一個(gè)所有列設(shè)置為NULL的行被用于右表。你可以使用這個(gè)事實(shí)指出表中在另一個(gè)表中沒(méi)有對(duì)應(yīng)記錄的記錄:
mysql> select table1.* from table1
LEFT JOIN table2 ON table1.id=table2.id
where table2.id is NULL;
這個(gè)例子找出在table1中所有的行,其id值在table2中不存在(即,所有table1中的在table2中沒(méi)有對(duì)應(yīng)行的行)。當(dāng)然這假定table2.id被聲明為NOT NULL。
USING (column_list)子句命名一系列必須存在于兩個(gè)表中的列。 例如一個(gè)USING子句:
A LEFT JOIN B USING (C1,C2,C3,...)
被定義成在語(yǔ)義上等同一個(gè)這樣的ON表達(dá)式:
A.C1=B.C1 AND A.C2=B.C2 AND A.C3=B.C3,...
2個(gè)表的NATURAL LEFT JOIN被定義為在語(yǔ)義上等同于一個(gè)有USING子句命名在兩表中存在的所有列的一個(gè)LEFT JOIN。
STRAIGHT_JOIN等同于JOIN,除了左表在右表之前被讀入,這能用于這些情況,聯(lián)結(jié)優(yōu)化器將表的順序放錯(cuò)了。
一些例子:
mysql> select * from table1,table2 where table1.id=table2.id;
mysql> select * from table1 LEFT JOIN table2 ON table1.id=table2.id;
mysql> select * from table1 LEFT JOIN table2 USING (id);
mysql> select * from table1 LEFT JOIN table2 ON table1.id=table2.id
LEFT JOIN table3 ON table2.id=table3.id;
MySQL支持下列用于SELECT語(yǔ)句的JOIN句法:
table_reference, table_reference
table_reference [CROSS] JOIN table_reference
table_reference INNER JOIN table_reference
table_reference STRAIGHT_JOIN table_reference
table_reference LEFT [OUTER] JOIN table_reference ON conditional_expr
table_reference LEFT [OUTER] JOIN table_reference USING (column_list)
table_reference NATURAL LEFT [OUTER] JOIN table_reference
{ oj table_reference LEFT OUTER JOIN table_reference ON conditional_expr }
上述最后的LEFT OUTER JOIN的句法只是為了與ODBC兼容而存在的。
一個(gè)表可以是使用aliasedtbl_name AS alias_name或tbl_name alias_name的起的別名。
mysql> select t1.name, t2.salary from employee AS t1, info AS t2
where t1.name = t2.name;
INNER JOIN和,(逗號(hào))在語(yǔ)義上是等價(jià)的,都是進(jìn)行一個(gè)在使用的表之間的全聯(lián)結(jié)。通常,你指定表應(yīng)該如何用WHERE條件聯(lián)結(jié)起來(lái)。
ON條件是可以用在一個(gè)WHERE子句形式的任何條件。
如果在一個(gè)LEFT JOIN中沒(méi)有右表的匹配記錄,一個(gè)所有列設(shè)置為NULL的行被用于右表。你可以使用這個(gè)事實(shí)指出表中在另一個(gè)表中沒(méi)有對(duì)應(yīng)記錄的記錄:
mysql> select table1.* from table1
LEFT JOIN table2 ON table1.id=table2.id
where table2.id is NULL;
這個(gè)例子找出在table1中所有的行,其id值在table2中不存在(即,所有table1中的在table2中沒(méi)有對(duì)應(yīng)行的行)。當(dāng)然這假定table2.id被聲明為NOT NULL。
USING (column_list)子句命名一系列必須存在于兩個(gè)表中的列。 例如一個(gè)USING子句:
A LEFT JOIN B USING (C1,C2,C3,...)
被定義成在語(yǔ)義上等同一個(gè)這樣的ON表達(dá)式:
A.C1=B.C1 AND A.C2=B.C2 AND A.C3=B.C3,...
2個(gè)表的NATURAL LEFT JOIN被定義為在語(yǔ)義上等同于一個(gè)有USING子句命名在兩表中存在的所有列的一個(gè)LEFT JOIN。
STRAIGHT_JOIN等同于JOIN,除了左表在右表之前被讀入,這能用于這些情況,聯(lián)結(jié)優(yōu)化器將表的順序放錯(cuò)了。
一些例子:
mysql> select * from table1,table2 where table1.id=table2.id;
mysql> select * from table1 LEFT JOIN table2 ON table1.id=table2.id;
mysql> select * from table1 LEFT JOIN table2 USING (id);
mysql> select * from table1 LEFT JOIN table2 ON table1.id=table2.id
LEFT JOIN table3 ON table2.id=table3.id;
re: 致老大和同志們書,zz from 老徐 SYBIL@BLOGJAVA 2006-12-13 18:33
==========================================================================================================================================================================================================================================================想想自己的高中,大學(xué),每一步都走得不容易,是該倍加珍惜的時(shí)候了。
re: 要擺正自己的位置 SYBIL@BLOGJAVA 2006-12-03 09:39
莫 生 氣
作者:丁勁
“莫生氣”本是佛家禪道開導(dǎo)世人的誡語(yǔ)。
經(jīng)歷了一些世事,也才慢慢領(lǐng)會(huì)到“莫生氣”其實(shí)也是世俗中的一種生存智慧。
有一個(gè)經(jīng)典小故事:1980年美國(guó)總統(tǒng)大選期間,里根的競(jìng)選對(duì)手卡特在一次關(guān)鍵的電視辯論中抓住他的生活作風(fēng)問(wèn)題發(fā)起蓄意攻擊。里根絲毫沒(méi)有生氣,只是微微一笑,詼諧地調(diào)侃說(shuō):“你又來(lái)這一套了”。一時(shí)間,聽眾哈哈大笑,為里根的精彩回答鼓起掌來(lái)。這樣,卡特反而陷入了尷尬的境地。里根則為自己贏得了更多的信賴和支持,并最終獲得大選的勝利。
看來(lái),莫生氣不僅是一種風(fēng)度。還是一種精神力量。
幾乎每個(gè)人都會(huì)在生活中遇到不公平的對(duì)待。別人的輕視,羞辱或責(zé)備……每個(gè)人生氣總是可以找到理由的。但是心理學(xué)家認(rèn)為:憤怒基于責(zé)備。換個(gè)思維角度來(lái)說(shuō),你的“憤怒”又或許會(huì)成為另一個(gè)人生氣的理由。如果這樣,結(jié)果將會(huì)越來(lái)越糟糕。生氣所傷害的往往不僅是別人,還有自己。
業(yè)余我自學(xué)過(guò)中醫(yī)西醫(yī)還有營(yíng)養(yǎng)學(xué)的一些知識(shí)。知道憤怒會(huì)導(dǎo)致高血壓,胃潰瘍,失眠等。而且喜歡生氣的人患癌癥和神經(jīng)衰弱的可能性比正常人大。可見生氣對(duì)身心也是有百害而無(wú)一利。原來(lái)“莫生氣”也是健康法寶之一啊。
有一句名言:人生最大的敵人是自己。人們往往不能戰(zhàn)勝自己的情緒。其實(shí),很多時(shí)候生氣已經(jīng)成為某些人的一種習(xí)慣。而要真正地改變自己,也只有讓“莫生氣”變成自己的一種生活習(xí)慣。所謂“江山易改,本性難移”。這并不是理由----老師曾經(jīng)笑著這樣解釋:本性“難”移,不是“不”移。可見還是可以移的……
這幾年,一直從事銷售工作。做過(guò)很多行業(yè)的推銷員。面對(duì)不同的人不同嘴臉和態(tài)度,深知道“忍耐”的重要。為了業(yè)績(jī)和生計(jì),也練就了一張推銷員特有的“厚臉皮”。等到工作之余,再將心中的不痛快工作的壓力和怨氣找個(gè)方式來(lái)發(fā)泄……但是,能讓我堅(jiān)持下來(lái)并喜歡營(yíng)銷這一行。還是緣于我從“忍耐”到“莫生氣”的心態(tài)轉(zhuǎn)變。一個(gè)人的“忍耐”是有限度的,說(shuō)不定哪天就要忍無(wú)可忍甚至崩潰。“莫生氣”讓我知道自己應(yīng)該在乎的是什么,原本追求的是什么……所以,那些需要“忍耐”的東西既然不是我們要的,就當(dāng)沒(méi)見到吧。何必硬抓在手里硬往自己心里裝下去?
“莫生氣”這三個(gè)字讓我的工作變得更加輕松和順利。
記得情感矯正專家譚春虹老師說(shuō)的那句話:不能生氣的人是笨蛋,而不去生氣的人才是聰明人。
其實(shí),我不想做個(gè)聰明人。我只想擁有簡(jiǎn)單快樂(lè)一點(diǎn)的生活----所以,也懶得生氣。
作者:丁勁
“莫生氣”本是佛家禪道開導(dǎo)世人的誡語(yǔ)。
經(jīng)歷了一些世事,也才慢慢領(lǐng)會(huì)到“莫生氣”其實(shí)也是世俗中的一種生存智慧。
有一個(gè)經(jīng)典小故事:1980年美國(guó)總統(tǒng)大選期間,里根的競(jìng)選對(duì)手卡特在一次關(guān)鍵的電視辯論中抓住他的生活作風(fēng)問(wèn)題發(fā)起蓄意攻擊。里根絲毫沒(méi)有生氣,只是微微一笑,詼諧地調(diào)侃說(shuō):“你又來(lái)這一套了”。一時(shí)間,聽眾哈哈大笑,為里根的精彩回答鼓起掌來(lái)。這樣,卡特反而陷入了尷尬的境地。里根則為自己贏得了更多的信賴和支持,并最終獲得大選的勝利。
看來(lái),莫生氣不僅是一種風(fēng)度。還是一種精神力量。
幾乎每個(gè)人都會(huì)在生活中遇到不公平的對(duì)待。別人的輕視,羞辱或責(zé)備……每個(gè)人生氣總是可以找到理由的。但是心理學(xué)家認(rèn)為:憤怒基于責(zé)備。換個(gè)思維角度來(lái)說(shuō),你的“憤怒”又或許會(huì)成為另一個(gè)人生氣的理由。如果這樣,結(jié)果將會(huì)越來(lái)越糟糕。生氣所傷害的往往不僅是別人,還有自己。
業(yè)余我自學(xué)過(guò)中醫(yī)西醫(yī)還有營(yíng)養(yǎng)學(xué)的一些知識(shí)。知道憤怒會(huì)導(dǎo)致高血壓,胃潰瘍,失眠等。而且喜歡生氣的人患癌癥和神經(jīng)衰弱的可能性比正常人大。可見生氣對(duì)身心也是有百害而無(wú)一利。原來(lái)“莫生氣”也是健康法寶之一啊。
有一句名言:人生最大的敵人是自己。人們往往不能戰(zhàn)勝自己的情緒。其實(shí),很多時(shí)候生氣已經(jīng)成為某些人的一種習(xí)慣。而要真正地改變自己,也只有讓“莫生氣”變成自己的一種生活習(xí)慣。所謂“江山易改,本性難移”。這并不是理由----老師曾經(jīng)笑著這樣解釋:本性“難”移,不是“不”移。可見還是可以移的……
這幾年,一直從事銷售工作。做過(guò)很多行業(yè)的推銷員。面對(duì)不同的人不同嘴臉和態(tài)度,深知道“忍耐”的重要。為了業(yè)績(jī)和生計(jì),也練就了一張推銷員特有的“厚臉皮”。等到工作之余,再將心中的不痛快工作的壓力和怨氣找個(gè)方式來(lái)發(fā)泄……但是,能讓我堅(jiān)持下來(lái)并喜歡營(yíng)銷這一行。還是緣于我從“忍耐”到“莫生氣”的心態(tài)轉(zhuǎn)變。一個(gè)人的“忍耐”是有限度的,說(shuō)不定哪天就要忍無(wú)可忍甚至崩潰。“莫生氣”讓我知道自己應(yīng)該在乎的是什么,原本追求的是什么……所以,那些需要“忍耐”的東西既然不是我們要的,就當(dāng)沒(méi)見到吧。何必硬抓在手里硬往自己心里裝下去?
“莫生氣”這三個(gè)字讓我的工作變得更加輕松和順利。
記得情感矯正專家譚春虹老師說(shuō)的那句話:不能生氣的人是笨蛋,而不去生氣的人才是聰明人。
其實(shí),我不想做個(gè)聰明人。我只想擁有簡(jiǎn)單快樂(lè)一點(diǎn)的生活----所以,也懶得生氣。
re: blog read of nov 18th SYBIL@BLOGJAVA 2006-11-18 22:58
re: blog read of nov 18th SYBIL@BLOGJAVA 2006-11-18 22:47
re: 插個(gè)地標(biāo)先 SYBIL@BLOGJAVA 2006-06-28 21:09
謝謝朋友捧場(chǎng):)
re: Ajax OpenDoc放出 SYBIL@BLOGJAVA 2006-04-24 11:24
可夠提供一下源代碼?
我的郵箱sybilwhile@gmail.com
我的郵箱sybilwhile@gmail.com