活动内容:大班英语--big  and  small

活动目标:

1.幼儿能愉快的参加英语活动,并能从中体验到用英语交流的'乐趣.

2.幼儿能学会单词:big  small.理解含义.

3.会说a  big ...,  a  small ....的短句.

4.有与同伴友好合作的习惯.

活动准备:

1.大小皮球各一个,大小玩具狗各一个.

2.图片:大小成对的事物图片.

3.花园的场景布置.

活动重点:目标3

活动难点:目标3

活动过程:

一.Let's  play  agame:   nod  your  herd

1.ok,we are  tird,now  have a rest.

教师变魔术:变出大小的玩具狗,皮球.引出单词big  small.

2.引导幼儿学习单词,短句.指导幼儿发音正确.

3.Game:把玩具抛给幼儿,接到的幼儿说出a  big(small).....

二.Game :looking  for  your  friend.

1.让幼儿在花园里去找图片,然后找到相同的图片的幼儿为朋友.

2.幼儿互动:请幼儿相互对比图片的事物,运用a  big ...a  small....

短句.

3.请个别幼儿在集体前说短句.

三.和客人老师比比谁的手大,巩固练习短句.

四.结束游戏.

篇6:托班英语活动《Big and Small》教案

托班英语活动《Big and Small》教案

英语活动内容:big and small

目标:通过看看、做做、分分,让幼儿来了解大和小,并结合学习big ,small激发幼儿学习英语的兴趣。

准备:气球

设计:

1、引起兴趣――看看

师从区域角取来气球问:“这是什么?”,“刚刚谁玩过?你是怎么玩的?”,“我们一起来吹气球,好吗?”。(师吹气球,请幼儿看看气球的变化)

2、做做

我们一起来让气球变大,变小。 学单词big:师把气球吹大,幼儿双手手心相对分开,听到big,big,big,幼儿双手相对距离加大。 学单词small,师将吹大的气球放气,幼儿双手手心相对,听到small,small,small,幼儿双手相对距离缩小。

3、分分

幼儿在教室里找找,布置的环境中有没有big和small。 示范:先区分师所提供的.材料的大小,并能有针对性的根据大小粘贴。 例如:大树上粘大树叶,小树上粘贴小树叶等。

4、延伸

我们从生活中找找哪里有big and small。

篇7:To Be a small Fish in a Big Pond or

To Be a small Fish in a Big Pond or a Big Fish in a Small Pond?

To Be a small Fish in a Big Pond or a Big Fish in a Small Pond?

1.在大企业工作的特点

2.在小企业工作的特点

3.我的选择

Just as there are

distinct differences between being a small fish is a big pond and a big fish in a small pond, so it is with working as a subordinate in a large enterprise and presiding in a small firm.

With the former, you can derive a deep sense of satisfaction from being a member of a well-known organization such as General Motors, or the Bell Telephone System. You have the opportunities of learning from experienced executives and knowing about the standard working process.

With the latter, you have greater responsibilities and your decision may bring immediate effect. Normally you are expose to various experiences and expected to do a great many thing without much help or guidance.

Personally I prefer to work in a small enterprise, where my prospect of promotion is good as long as I work hard. To tell the truth, I'd rather become a well-known and important figure within my own small pond.

英语教案-英语活动[big or small]

篇8:Big Table and Small Table Join strategy in Oracle

Big Table and Small Table Join strategy in Oracle

The optimizer usesnested loop joins when joining small number of rows, with a good drivingcondition between the two tables. You drive from the outer loop to the innerloop, so the order of tables in the execution plan is important.

The outer loop isthe driving row source. It produces a set of rows for driving the joincondition. The row source can be a table accessed using an index scan or a fulltable scan. Also, the rows can be produced from any other operation. Forexample, the output from a nested loop join can be used as a row source for anothernested loop join.

The inner loop isiterated for every row returned from the outer loop, ideally by an index scan.If the access path for the inner loop is not dependent on the outer loop, thenyou can end up with a Cartesian product; for every iteration of the outer loop,the inner loop produces the same set of rows. Therefore, you should use other joinmethods when two independent row sources are joined together.

The following noworkload system statistics will be used:

SELECT

PNAME,

PVAL1

FROM

SYS.AUX_STATS$

ORDER BY

PNAME;

PNAME        PVAL1

--------------- ----------

CPUSPEED

CPUSPEEDNW   2116.57559

DSTART

DSTOP

FLAGS          1

IOSEEKTIM       10

IOTFRSPEED      4096

MAXTHR

MBRC

MREADTIM

SLAVETHR

SREADTIM

STATUS

First the tables. We will start simple, with one table(T3) having 100 rows and another table (T4) having 10 rows:

CREATE TABLE T3 (

C1 NUMBER,

C2 NUMBER,

C3 NUMBER,

C4 VARCHAR2(20),

PADDING VARCHAR2(200));

CREATE TABLE T4 (

C1 NUMBER,

C2 NUMBER,

C3 NUMBER,

C4 VARCHAR2(20),

PADDING VARCHAR2(200));

INSERT INTO

T3

SELECT

ROWNUM C1,

1000000-ROWNUM C2,

MOD(ROWNUM-1,1000) C3,

TO_CHAR(SYSDATE+MOD(ROWNUM-1,10000),'DAY') C4,

LPAD(' ',200,'A') PADDING

FROM

DUAL

CONNECT BY

LEVEL<=100;

INSERT INTO

T4

SELECT

ROWNUM C1,

1000000-ROWNUM C2,

MOD(ROWNUM-1,1000) C3,

TO_CHAR(SYSDATE+MOD(ROWNUM-1,10000),'DAY') C4,

LPAD(' ',200,'A') PADDING

FROM

DUAL

CONNECT BY

LEVEL<=10;

COMMIT;

CREATE INDEX IND_T3_C1 ON T3(C1);

CREATE INDEX IND_T3_C2 ON T3(C2);

CREATE INDEX IND_T3_C3 ON T3(C3);

CREATE INDEX IND_T4_C1 ON T4(C1);

CREATE INDEX IND_T4_C2 ON T4(C2);

CREATE INDEX IND_T4_C3 ON T4(C3);

EXEC DBMS_STATS.GATHER_TABLE_STATS(OWNNAME=>USER,TABNAME=>'T3',CASCADE=>TRUE,ESTIMATE_PERCENT=>NULL)

EXEC DBMS_STATS.GATHER_TABLE_STATS(OWNNAME=>USER,TABNAME=>'T4',CASCADE=>TRUE,ESTIMATE_PERCENT=>NULL)

We are able to easily produce an example where the “smallest”table is selected as the driving table (note that I had to add a hint tospecify a nested loop join in several of these examples):

SET AUTOTRACE TRACEONLY EXPLAIN

SELECT /*+ USE_NL(T3 T4) */

T3.C1,

T3.C2,

T3.C3,

T3.C4,

T4.C1,

T4.C2,

T4.C3,

T4.C4

FROM

T3,

T4

WHERE

T3.C1=T4.C1;

Execution Plan

----------------------------------------------------------

Plan hash value: 567778651

------------------------------------------------------------------------------------------

| Id | Operation          | Name   | Rows | Bytes | Cost (%CPU)| Time  |

------------------------------------------------------------------------------------------

| 0 | SELECT STATEMENT      |     |  10 | 420 |  13 (0)| 00:00:01 |

| 1 | NESTED LOOPS        |     |   |   |      |     |

| 2 | NESTED LOOPS       |     |  10 | 420 |  13 (0)| 00:00:01 |

| 3 |  TABLE ACCESS FULL    | T4    |  10 | 210 |  3 (0)| 00:00:01 |

|* 4 |  INDEX RANGE SCAN     | IND_T3_C1 |  1 |   |  0 (0)| 00:00:01 |

| 5 | TABLE ACCESS BY INDEX ROWID| T3    |  1 |  21 |  1 (0)| 00:00:01 |

------------------------------------------------------------------------------------------

Predicate Information (identified by operation id):

---------------------------------------------------

4 - access(“T3”.“C1”=“T4”.“C1”)

If we stop at that point, we could declare quite simply that theoptimizer selects the smaller table as the driving table. But wait aminute, take a look at this example where the optimizer selected the largesttable as the driving table:

SELECT /*+ USE_NL(T3 T4) */

T3.C1,

T3.C2,

T3.C3,

T3.C4,

T4.C1,

T4.C2,

T4.C3,

T4.C4

FROM

T3,

T4

WHERE

T3.C1=T4.C1

AND T3.C2=1;

Execution Plan

----------------------------------------------------------

Plan hash value: 4214127300

-------------------------------------------------------------------------------------------

| Id | Operation          | Name   | Rows | Bytes | Cost (%CPU)| Time  |

-------------------------------------------------------------------------------------------

| 0 | SELECT STATEMENT       |     |  1 |  42 |  3 (0)| 00:00:01 |

| 1 | NESTED LOOPS        |     |   |   |      |     |

| 2 | NESTED LOOPS        |     |  1 |  42 |  3 (0)| 00:00:01 |

| 3 |  TABLE ACCESS BY INDEX ROWID| T3    |  1 |  21 |  2 (0)| 00:00:01 |

|* 4 |  INDEX RANGE SCAN     | IND_T3_C2 |  1 |   |  1 (0)| 00:00:01 |

|* 5 |  INDEX RANGE SCAN     | IND_T4_C1 |  1 |   |  0 (0)| 00:00:01 |

| 6 | TABLE ACCESS BY INDEX ROWID | T4    |  1 |  21 |  1 (0)| 00:00:01 |

-------------------------------------------------------------------------------------------

Predicate Information (identified by operation id):

---------------------------------------------------

4 - access(“T3”.“C2”=1)

5 - access(“T3”.“C1”=“T4”.“C1”)

The above execution plans were generated on 11.2.0.2, whichsometimes differs a bit from older Oracle Database release versions when nestedloops joins are used (note the two nested loops joins), however we areable to hint the optimizer to generate the older style. nested loops join:

SELECT /*+ USE_NL(T3 T4) OPTIMIZER_FEATURES_ENABLE('10.2.0.4') */

T3.C1,

T3.C2,

T3.C3,

T3.C4,

T4.C1,

T4.C2,

T4.C3,

T4.C4

FROM

T3,

T4

WHERE

T3.C1=T4.C1;

Execution Plan

----------------------------------------------------------

Plan hash value: 2465588182

-----------------------------------------------------------------------------------------

| Id | Operation         | Name   | Rows | Bytes | Cost (%CPU)| Time  |

-----------------------------------------------------------------------------------------

| 0 | SELECT STATEMENT      |     |  10 | 420 |  13 (0)| 00:00:01 |

| 1 | TABLE ACCESS BY INDEX ROWID| T3    |  1 |  21 |  1 (0)| 00:00:01 |

| 2 | NESTED LOOPS       |     |  10 | 420 |  13 (0)| 00:00:01 |

| 3 |  TABLE ACCESS FULL    | T4    |  10 | 210 |  3 (0)| 00:00:01 |

|* 4 |  INDEX RANGE SCAN    | IND_T3_C1 |  1 |   |  0 (0)| 00:00:01 |

-----------------------------------------------------------------------------------------

Predicate Information (identified by operation id):

---------------------------------------------------

4 - access(“T3”.“C1”=“T4”.“C1”)

SELECT /*+ USE_NL(T3 T4) OPTIMIZER_FEATURES_ENABLE('10.2.0.4') */

T3.C1,

T3.C2,

T3.C3,

T3.C4,

T4.C1,

T4.C2,

T4.C3,

T4.C4

FROM

T3,

T4

WHERE

T3.C1=T4.C1

AND T3.C2=1;

Execution Plan

----------------------------------------------------------

Plan hash value: 3446668716

-------------------------------------------------------------------------------------------

| Id | Operation          | Name   | Rows | Bytes | Cost (%CPU)| Time  |

-------------------------------------------------------------------------------------------

| 0 | SELECT STATEMENT       |     |  1 |  42 |  3 (0)| 00:00:01 |

| 1 | TABLE ACCESS BY INDEX ROWID | T4    |  1 |  21 |  1 (0)| 00:00:01 |

| 2 | NESTED LOOPS        |     |  1 |  42 |  3 (0)| 00:00:01 |

| 3 |  TABLE ACCESS BY INDEX ROWID| T3    |  1 |  21 |  2 (0)| 00:00:01 |

|* 4 |  INDEX RANGE SCAN     | IND_T3_C2 |  1 |   |  1 (0)| 00:00:01 |

|* 5 |  INDEX RANGE SCAN     | IND_T4_C1 |  1 |   |  0 (0)| 00:00:01 |

-------------------------------------------------------------------------------------------

Predicate Information (identified by operation id):

---------------------------------------------------

4 - access(“T3”.“C2”=1)

5 - access(“T3”.“C1”=“T4”.“C1”)

We found one case where the larger table was selected as thedriving table, so the books and articles that simply state absolutely that thesmallest table will be the driving table are not completelycorrect. Maybe the larger table is only selected as the driving tablewhen both tables are small? Let’s test that theory by creating a coupleof more tables:

SET AUTOTRACE OFF

CREATE TABLE T1 (

C1 NUMBER,

C2 NUMBER,

C3 NUMBER,

C4 VARCHAR2(20),

PADDING VARCHAR2(200));

CREATE TABLE T2 (

C1 NUMBER,

C2 NUMBER,

C3 NUMBER,

C4 VARCHAR2(20),

PADDING VARCHAR2(200));

INSERT INTO

T1

SELECT

ROWNUM C1,

1000000-ROWNUM C2,

MOD(ROWNUM-1,1000) C3,

TO_CHAR(SYSDATE+MOD(ROWNUM-1,10000),'DAY') C4,

LPAD(' ',200,'A') PADDING

FROM

DUAL

CONNECT BY

LEVEL<=1000000;

INSERT INTO

T2

SELECT

ROWNUM C1,

1000000-ROWNUM C2,

MOD(ROWNUM-1,1000) C3,

TO_CHAR(SYSDATE+MOD(ROWNUM-1,10000),'DAY') C4,

LPAD(' ',200,'A') PADDING

FROM

DUAL

CONNECT BY

LEVEL<=100000;

COMMIT;

CREATE INDEX IND_T1_C1 ON T1(C1);

CREATE INDEX IND_T1_C2 ON T1(C2);

CREATE INDEX IND_T1_C3 ON T1(C3);

CREATE INDEX IND_T2_C1 ON T2(C1);

CREATE INDEX IND_T2_C2 ON T2(C2);

CREATE INDEX IND_T2_C3 ON T2(C3);

EXEC DBMS_STATS.GATHER_TABLE_STATS(OWNNAME=>USER,TABNAME=>'T1',CASCADE=>TRUE,ESTIMATE_PERCENT=>NULL)

EXEC DBMS_STATS.GATHER_TABLE_STATS(OWNNAME=>USER,TABNAME=>'T2',CASCADE=>TRUE,ESTIMATE_PERCENT=>NULL)

The above script. created table T1 with 1,000,000 rows and table T2with 100,000 rows. We will now use queries that are similar to those thatwere used with the 100 and 10 row tables.

The smaller table (T2) as the driving table:

SET AUTOTRACE TRACEONLY EXPLAIN

SELECT /*+ USE_NL(T1 T2) */

T1.C1,

T1.C2,

T1.C3,

T1.C4,

T2.C1,

T2.C2,

T2.C3,

T2.C4

FROM

T1,

T2

WHERE

T1.C1=T2.C1;

Execution Plan

----------------------------------------------------------

Plan hash value: 2610346857

------------------------------------------------------------------------------------------

| Id | Operation          | Name   | Rows | Bytes | Cost (%CPU)| Time  |

------------------------------------------------------------------------------------------

| 0 | SELECT STATEMENT      |     | 100K| 4687K| 300K (1)| 01:00:12 |

| 1 | NESTED LOOPS        |     |   |   |      |     |

| 2 | NESTED LOOPS       |     | 100K| 4687K| 300K (1)| 01:00:12 |

| 3 |  TABLE ACCESS FULL    | T2    | 100K| 2343K| 889 (1)| 00:00:11 |

|* 4 |  INDEX RANGE SCAN     | IND_T1_C1 |  1 |   |  2 (0)| 00:00:01 |

| 5 | TABLE ACCESS BY INDEX ROWID| T1    |  1 |  24 |  3 (0)| 00:00:01 |

------------------------------------------------------------------------------------------

Predicate Information (identified by operation id):

---------------------------------------------------

4 - access(“T1”.“C1”=“T2”.“C1”)

The larger table as the driving table:

SELECT /*+ USE_NL(T1 T2) */

T1.C1,

T1.C2,

T1.C3,

T1.C4,

T2.C1,

T2.C2,

T2.C3,

T2.C4

FROM

T1,

T2

WHERE

T1.C1=T2.C1

AND T1.C2 BETWEEN 1 AND 10000;

Execution Plan

----------------------------------------------------------

Plan hash value: 2331401024

-------------------------------------------------------------------------------------------

| Id | Operation          | Name   | Rows | Bytes | Cost (%CPU)| Time  |

-------------------------------------------------------------------------------------------

| 0 | SELECT STATEMENT       |     | 10001 | 468K| 11353 (1)| 00:02:17 |

| 1 | NESTED LOOPS        |     |   |   |      |     |

| 2 | NESTED LOOPS        |     | 10001 | 468K| 11353 (1)| 00:02:17 |

| 3 |  TABLE ACCESS BY INDEX ROWID| T1    | 10001 | 234K| 348 (0)| 00:00:05 |

|* 4 |  INDEX RANGE SCAN     | IND_T1_C2 | 10001 |   |  25 (0)| 00:00:01 |

|* 5 |  INDEX RANGE SCAN     | IND_T2_C1 |  1 |   |  1 (0)| 00:00:01 |

| 6 | TABLE ACCESS BY INDEX ROWID | T2    |  1 |  24 |  2 (0)| 00:00:01 |

-------------------------------------------------------------------------------------------

Predicate Information (identified by operation id):

---------------------------------------------------

4 - access(“T1”.“C2”>=1 AND “T1”.“C2”<=10000)

5 - access(“T1”.“C1”=“T2”.“C1”)

So, what is happening? Is it simply the case that it is theexpected number of rows that will be returned from each table that determineswhich table will be the driving table? Let’s test:

SET AUTOTRACE OFF

SELECT

COUNT(*)

FROM

T1

WHERE

T1.C1 BETWEEN 890000 AND 1000000;

COUNT(*)

----------

110001

SELECT

COUNT(*)

FROM

T2

WHERE

T2.C2 BETWEEN 900000 AND 1000000;

COUNT(*)

----------

100000

The above shows that if we specify T1.C1 BETWEEN890000 AND 1000000 in the WHERE clause there will be 110,001 rows from the largertable that match the criteria. If we specify T2.C2 BETWEEN 900000 AND 1000000 in the WHERE clause there will be 100,000 rows from the smallertable that match the criteria. If we execute the following query, which tablewill be the driving table, the 10 times larger T1 table where we are retrieving110,001 rows or the smaller T2 table where we are retrieving 100,000 rows?

SET AUTOTRACE TRACEONLY EXPLAIN

SELECT /*+ USE_NL(T1 T2) */

T1.C1,

T1.C2,

T1.C3,

T1.C4,

T2.C1,

T2.C2,

T2.C3,

T2.C4

FROM

T1,

T2

WHERE

T1.C3=T2.C3

AND T1.C1 BETWEEN 890000 AND 1000000

AND T2.C2 BETWEEN 900000 AND 1000000;

This is the result that I received, which seems to demonstratethat it is not just the size of the tables, nor is it the number of expectedrows to be returned from the tables, that determines which table will be thedriving table:

-------------------------------------------------------------------------------------------

| Id | Operation          | Name   | Rows | Bytes | Cost (%CPU)| Time  |

-------------------------------------------------------------------------------------------

| 0 | SELECT STATEMENT       |     |  11M| 503M|  11M (1)| 37:03:27 |

| 1 | NESTED LOOPS        |     |   |   |      |     |

| 2 | NESTED LOOPS        |     |  11M| 503M|  11M (1)| 37:03:27 |

| 3 |  TABLE ACCESS BY INDEX ROWID| T1    | 110K| 2578K| 3799 (1)| 00:00:46 |

|* 4 |  INDEX RANGE SCAN     | IND_T1_C1 | 110K|   | 248 (1)| 00:00:03 |

|* 5 |  INDEX RANGE SCAN     | IND_T2_C3 | 100 |   |  1 (0)| 00:00:01 |

|* 6 | TABLE ACCESS BY INDEX ROWID | T2    | 100 | 2400 | 101 (0)| 00:00:02 |

-------------------------------------------------------------------------------------------

Predicate Information (identified by operation id):

---------------------------------------------------

4 - access(“T1”.“C1”>=890000 AND “T1”.“C1”<=1000000)

5 - access(“T1”.“C3”=“T2”.“C3”)

6 - filter(“T2”.“C2”>=900000 AND “T2”.“C2”<=1000000)

110,001 rows from T1 is still somewhat close in number to the100,000 rows from T2, so let’s try an experiment selecting 992,701 rows fromT1:

SELECT /*+ USE_NL(T1 T2) */

T1.C1,

T1.C2,

T1.C3,

T1.C4,

T2.C1,

T2.C2,

T2.C3,

T2.C4

FROM

T1,

T2

WHERE

T1.C3=T2.C3

AND T1.C1 BETWEEN 7300 AND 1000000

AND T2.C2 BETWEEN 900000 AND 1000000;

Execution Plan

----------------------------------------------------------

Plan hash value: 3718770616

------------------------------------------------------------------------------------------

| Id | Operation          | Name   | Rows | Bytes | Cost (%CPU)| Time  |

------------------------------------------------------------------------------------------

| 0 | SELECT STATEMENT      |     |  99M| 4544M| 100M (1)|334:20:23 |

| 1 | NESTED LOOPS        |     |   |   |      |     |

| 2 | NESTED LOOPS       |     |  99M| 4544M| 100M (1)|334:20:23 |

|* 3 |  TABLE ACCESS FULL    | T1    | 992K|  22M| 8835 (1)| 00:01:47 |

|* 4 |  INDEX RANGE SCAN     | IND_T2_C3 | 100 |   |  1 (0)| 00:00:01 |

|* 5 | TABLE ACCESS BY INDEX ROWID| T2    | 100 | 2400 | 101 (0)| 00:00:02 |

------------------------------------------------------------------------------------------

Predicate Information (identified by operation id):

---------------------------------------------------

3 - filter(“T1”.“C1”>=7300 AND “T1”.“C1”<=1000000)

4 - access(“T1”.“C3”=“T2”.“C3”)

5 - filter(“T2”.“C2”>=900000 AND “T2”.“C2”<=1000000)

As shown above, table T1 is still the driving table in the nestedloops join. Let’s test retrieving 993,001 rows from T1:

SELECT /*+ USE_NL(T1 T2) */

T1.C1,

T1.C2,

T1.C3,

T1.C4,

T2.C1,

T2.C2,

T2.C3,

T2.C4

FROM

T1,

T2

WHERE

T1.C3=T2.C3

AND T1.C1 BETWEEN 7000 AND 1000000

AND T2.C2 BETWEEN 900000 AND 1000000;

------------------------------------------------------------------------------------------

| Id | Operation          | Name   | Rows | Bytes | Cost (%CPU)| Time  |

------------------------------------------------------------------------------------------

| 0 | SELECT STATEMENT      |     |  99M| 4545M| 100M (1)|334:26:13 |

| 1 | NESTED LOOPS        |     |   |   |      |     |

| 2 | NESTED LOOPS       |     |  99M| 4545M| 100M (1)|334:26:13 |

|* 3 |  TABLE ACCESS FULL    | T2    | 100K| 2343K| 889 (1)| 00:00:11 |

|* 4 |  INDEX RANGE SCAN     | IND_T1_C3 | 1000 |   |  3 (0)| 00:00:01 |

|* 5 | TABLE ACCESS BY INDEX ROWID| T1    | 993 | 23832 | 1003 (0)| 00:00:13 |

------------------------------------------------------------------------------------------

Predicate Information (identified by operation id):

---------------------------------------------------

3 - filter(“T2”.“C2”>=900000 AND “T2”.“C2”<=1000000)

4 - access(“T1”.“C3”=“T2”.“C3”)

5 - filter(“T1”.“C1”>=7000 AND “T1”.“C1”<=1000000)

As shown above, table T2 is now the driving table for the nestedloops join. So, there must be other factors beyond table (or betterworded row source) size and the number of rows that will be retrieved from thetables. You might be wondering if the CLUSTERING_FACTOR of the indexesalso plays a role in determining which table is the driving table:

SET AUTOTRACE OFF

SELECT

TABLE_NAME,

INDEX_NAME,

CLUSTERING_FACTOR,

NUM_ROWS

FROM

USER_INDEXES

WHERE

TABLE_NAME IN ('T1','T2')

ORDER BY

TABLE_NAME,

INDEX_NAME;

TABLE_NAME INDEX_NAME CLUSTERING_FACTOR NUM_ROWS

---------- ---------- ----------------- ----------

T1    IND_T1_C1       32259  1000000

T1    IND_T1_C2       32259  1000000

T1    IND_T1_C3      1000000  1000000

T2    IND_T2_C1       3226  100000

T2    IND_T2_C2       3226  100000

T2    IND_T2_C3      100000  100000

I suggested (without checking) in the OTN thread that theCLUSTERING_FACTOR of the index on columns C2 would be higher than theCLUSTERING_FACTOR of the index on columns C1 because of the reverse (descending)order in which the C2 column values were inserted into the tables. Surprisingly (at least to me), the optimizer set the CLUSTERING_FACTOR of theC1 and C2 columns to be the same values, and set the CLUSTERING_FACTOR ofcolumn C3 to be the same as the number of rows in the table. Maybe one ofthe readers of this blog article can explain what happened to theCLUSTERING_FACTOR.

So, the answer to the OP’s question is not as simple as “theSmaller Table is the Driving Table” or ”the Larger Table is the DrivingTable”, but that there are other factors involved. I think that it mightbe time for a third read through of the book “Cost-Based OracleFundamentals”. In the mean time, anyone care to share more insight (yeswe could look inside a 10053 trace file, but there must be at least one othertip that can be provided without referencing such a trace file).

篇9:Small rabbit英语作文

Small rabbit英语作文

One day, my mother bought two little rabbits for me.

I’m very happy.

From that on, the two little rabbits became my good friends. They have two little ears, red eyes, with white and fat boby. They’re marvellous.

Everyday, they play with each other happily. One day, I couldn’t find them. I asked my mother: ”Where are they? ” My mother told me that She didn’t know. At last, I found them in the grass. They were very dirty. I was angry, but when I looked at their lovely faces, I was happy again.

I love my little rabbits, and they love me. They are my good friends forever.

篇10: 小学英语活动设计英语教案

小学英语活动设计英语教案

1、活动名称:Nice rainbows we can do?

2、活动类型:match

3、活动目的:使学生在欣赏彩虹带来美感的同时,能用what colour is it? It’s….句型,用英语正确问答颜色。并通过比赛,能把这些表示颜色的词进行逆向运用,即听《彩虹歌》,小组合作贴彩虹条。帮助学生在接触信息的同时学会抓住重要信息,培养听力;让学生在参与、合作和竞争中体验英语学习的成功与喜悦。

4、语言项目:Patten:What colour is it?It’s….

Colours:red black white yellow orange green blue purple brow grey

5、达到水平:初学英语的小朋友

6、活动方式:小组

7、活动准备:Teacher:在黑板上画一道大彩虹、十种颜色的彩条、彩虹小贴纸。

Student: 每组五张16开白纸,每人准备一套十种颜色彩条纸,胶水。

8、活动步骤:

Step1 全班活动

在学习相关颜色词句的基础上,运用黑板上的一道大彩虹,复习巩固句型What colour is it? It’s….及十个表示颜色的词。

Step2 小组竞赛

l 彩条分组

全班八组,每组请一人抽彩条来定组名。如第二组抽到的彩条是红色,教师就在黑板上大彩虹的红色前写上2,第二组就称红队。红条的右边就用来记录该组获奖情况。

l 竞赛开始,宣布竞赛方法。

学生的每组桌上备有一套十色彩条和白纸一张。

教师唱英文歌《Rainbow》(彩虹歌),学生根据歌曲中所听到的颜色在白纸上制作彩虹,必须按歌曲中颜色出现的先后顺序由上至下排列彩条。为方便操作,请学生将少量的'胶水竖着涂在白纸中心部位。

l 值得注意

进行第一轮比赛的时候,教师唱歌的速度可慢一点,要根据全班学生掌握颜色的情况而定。尽量让学生能找对颜色并贴好,满足学生的第一成就感。第二、三轮时,教师可以把歌曲逐步唱快一点,提高学生参与的积极性,体现小组间知识把握及合作的情况,拉出竞赛结果的距离。

l 句型巩固、获奖记录

每轮结束后就要检查竞赛情况,并给排列顺序正确的小组奖励,在黑板上相应的组别后贴上一道小彩虹。教师出示按正确顺序排列的彩虹问:What colour is it(the rainbow)?让学生一起来回答:It’s….然后在继续下一轮竞赛。在后来的几轮竞赛中,可让学生组与组集体问答句型What colour is it(the rainbow)? It’s….

Step 2 活动结束,宣布获奖情况。

看哪一组获得的小彩虹最多就是这次比赛的获胜者。可鼓励学生在课后玩这个竞赛。

篇11:My small bedroom英语作文

My small bedroom英语作文

I have a small bedroom, it’s on the second floor in my house.

There is a small bed, a table and a nice wardrobe in my room. The bed is on the left side of the table. The wardrobe is on the right, it is very beautiful. There is a lamp and a clock on the table, the lamp is green, the clock looks like an orange, it’s smart.

My bedroom is small, but it’s very comfortable.

篇12:五年级英语作文:Small rabbit

五年级英语作文:Small rabbit

One day, my mother bought two little rabbits for me.

I’m very happy.

From that on, the two little rabbits became my good friends. They have two little ears, red eyes, with white and fat boby. They’re marvellous.

Everyday, they play with each other happily. One day, I couldn’t find them. I asked my mother: ”Where are they? ” My mother told me that She didn’t know. At last, I found them in the grass. They were very dirty. I was angry, but when I looked at their lovely faces, I was happy again.

I love my little rabbits, and they love me. They are my good friends forever.

篇13:职场英语之The big day

Hello, welcome to the offices of Citrus Ventures!

嗨,欢迎来到柑橘公司的办公室!

It’s a big day for Anna, she’s about to present Tip Top Trading’s new Imperial Lemon to Mr Lime and his colleagues.

今天可是Anna的大日子!她正准备向Mr Lime和他的同事介绍顶级贸易公司的新产品――帝国柠檬。

This must not go wrong.

这次不能有半点差池。

…revoltionary laser-curve.... revolUtionary laser-curve... revol-

…革命性激光曲线…革命性激光曲线…革命

How are you feeling today Anna?

Anna,今天感觉怎么样?

Scared! I want to do really well. If I mess up and Citrus Ventures doesn’t place an order, I’ll be so upset.

很害怕!我希望今天能做好。如果我搞砸了,柑橘公司不下订单,我会很沮丧的。

You’re well prepared, that’s the main thing.

你准备得很好,这才是最重要的。

Explain clearly how your presentation will be organised.

清晰地解释你的演讲是如何组织的。

OK. Oh dear, I didn’t think of the very beginning.

好的。我的天啊,我不知道怎么开头。

Can you give me examples of what I should say?

你能给我举个例子,我该怎么说吗?

After you’ve introduced yourself, you could say:

在你自我介绍之后,你可以说:

Today I’m going to... and explain. Then say:

今天我打算…然后解释。接着说:

I’ll start by...

我将从…开始

And then I’m going to move on to discuss…

然后我会对……展开讨论。

And finally...

最后…

OK, like this:

好的,就像这样:

Today I’m going to...

今天,我打算…

I’ll start by...

我将从…开始

And then I’m going to move on to discuss…

然后我会对……展开讨论。

And finally...

最后…

Exactly.

没错。

Right, thanks, I’ll try. Everything will be fine. I feel relaxed now.

好的,谢谢,我会努力的。一切都会变好的,我感觉现在轻松多了。

Anna!

Anna!

Mr Lime!

Mr Lime!

How lovely to see you. You look absolutely... I’ve been looking forward to this for days!

看见你真好。你看起来很…我一直在期待着今天!

Everyone is waiting in the meeting room. Come this way....

大家都在会议上等着了。请跟我来…

Oh gosh.

噢,天啊。

Everyone in Citrus Ventures is very excited about this new Imperial Lemon, so I allowed a few extras to come and watch, I hope you don’t mind.

柑橘公司上下对这次帝国柠檬的新产品很兴奋,所以我允许了几个人过来看看,希望你不要介意。

All your equipment has been set up so you can begin!

所有的设备都准备好了,你可以开始了!

Hello, I’m Anna of Top Tip Trading… I mean, Tip Top Trading, sorry! I’m very unhappy to be here.

大家好,我是贸易顶级公司的Anna…我的意思是顶级贸易公司,抱歉!我很不高兴来到这里。

Anna- focus!

Anna,集中注意力!

I mean, I’m very happy to be here.

我的意思是,我很高兴来到这里。

Anna, breathe deeply, then say:Today I’m going to...

Anna,深呼吸,然后说,今天我打算…

Today I’m going to...

今天我打算…

Today I’m going to... Today I’m going to present our revolutionary, new Imperial Lemon.

今天我打算…今天我打算…向大家展示我们的新产品――新帝国柠檬。

I’ll start by telling you a bit about Tip Top Trading and some of the exciting new developments at our company.

我将从顶级贸易公司的一些事情说起,还有我们公司激动人心的新发展。

And then…I’m going to move on to explain how the Imperial Lemon is designed and what makes it so revolutionary.

然后我会对解释一下关于顶级贸易公司的设计还有它的革命性之处。

And finally, you will all have a chance to see it close up for yourselves and ask questions.

最后,你们都会有机会大饱眼福,提出问题。

So, let’s begin. This picture shows...

那么,我们开始吧。这张图片展示的是…

Well, as usual, Anna seems to be turning a difficult situation into a success.

好的,像平时一样,Anna好像把一次困难转变成一次成功。

She used the phrases we discussed, which made her opening clear and well-structured. She said:

她用了我们讨论的说法,可以使她的开场白清晰又有良好的结构。她是这么说的:

Today I’m going to...

今天,我打算…

I’ll start by...

我将从…开始

And then I’m going to move on to discuss…

然后我会对……展开讨论。

And finally...

最后…

But that’s just the beginning, now she’s got to get through the rest of the pitch C how will that go?

但是这只是一个开始,现在她得完成剩下的赛事――事情会怎样呢?

…this picture shows….oh no, why isn’t it working…I should just click on this….oh, what’s wrong with this stupid computer!

这张图片展示的是…噢,不是吧,为什么不好用…我刚刚就是点击了一下…噢,这台愚蠢的电脑怎么了!

Uh oh! It was all going so well but now Anna’s got computer problems.

噢!事情才刚开始好转,但现在Anna的电脑又有了麻烦。

What is she going to do? We’ll find out next time. Bye!

她会怎么做呢?我们将在下次揭晓。拜!

阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。