JLPT N1 Grammar List

~めく

~かたわら

~と思いきや

~が早いか

ただ~のみ

~なり

~や否や(いなや)

~ごとき

~がてら

~を皮切りに

~をもって

~が最後

~まみれ

~とあれば

~ともなると

~なくしては

~なしに

~ならでは

~に足る

~とあって

~べく

~かたがた

~たところで

~であれ

~にたえない

~を限りに

~ところを

~にそくして

~とはいえ

~が早いか

~ものを

~ようが

~いかん

~と相まって

~をよそに

~ないまでも

~てもさしつかえない

~たる

~まじき

~極まる

~にかこつけて

~に(は)あたらない

~にかたくない

~べからず

~を禁じ得ない

~たりとも

~きらいがある

~しまつだ

~を余儀なくされる

~てやまない

~割りに(は)

~かいもなく

~だけまし

~ないではすまない

~をふまえて

~をおして

~を経て

~ゆえ

~ながらも

~ことなしに

~ではあるまいし

~てからというもの

~としたところで

~(で)すら

~といえども

~っぱなし

~ずくめ

~ながらに

~にもまして

~にひきかえ

~はおろか

JLPT N2 Grammar List

~ことにする

~ばいいのに

~なかなか~ない

~しか~ない

~わけです

~にあたる

以外の

~というわけではない

なるべく

別に~ない

たしか

何といっても

やっぱり

~と言っても~

~は~に限る

~に気をつける

ろくに~ない

せいか

~に越したことはない

くせに

ゆえに

および

まんいち(万一)

あえて

がてら

かけては

かねない

いよいよ

~からなる(成る)

いつのまにか

~ないで済む

せっかく

~わけにはいかない

~ないわけにはいかない

~た上で

~ような気がする

いったんーば

~でいいです

やむをえず

~ではないだろうか

ろくに

~より仕方がない

せめて

~ものですから

~が気になる

思うように

よっぽど

さすがに

ものの

一方では

それにしても

~を~にまかせる

いたるまで(至るまで)

かねる

さしつかえない

たちまち

つうじて(通じて)

なにしろ(何しろ)

かたわら(傍ら)

ごとし(如し)

たまらない

とうてい

のぼる

JLPT N3 Grammar List

JLPT Level N3 Resources - Free vocabulary lists and MP3 sound files

~たばかり

~ようになる|ただし、セキュリティにおいては参照から自由にアクセスできるようになることに注意してくだ さい

~ことになる|これを知らなければ、設計時に思いがけない障害に突き当たることになるでしょう

~とても~ない

~らしい|とくに名前空間が長ったらしい名前の時は最悪です

~て初めて

~ないで|フレンド関数はメンバ関数ではないということを忘れないでください

~によって|コンパイラによって異なる

~のような|streamは出力する場所であり、C言語のファイル構造体のポインタのようなものに当たります|この obj のようなクラス型変数を、オブジェクト指向ではオブジェクトと呼びます

~ば~ほど|勉強すれば、するほど難しくなる感じです。

N+ばかり

~は~で有名

N+を始め

的|基本的な記述はC言語と変わらないのでCプログラマは比較的容易にC++を習得できるはずです

~は~くらいです

~さえ~ば|これも、派生クラスから基本クラスのコンストラクタ呼び出しさえ理解していれば問題ないですね

ほど|先ほどのスコープ解決演算子と用いることで、全ての位置の変数を表せます

まま|このオブジェクトは初期値のままなので Kitty on your lap が出力されます

わざわ|ざわざわざ何度も、スコープ演算子名前空間を指定するのは面倒です

~としたら

~たものだ|派生クラス、基本クラスともに引数を指定し、その引数が同じものでもかまいません

~たて

~ぐらい

~かえって

~には~の~がある|オブジェクト指向言語では、手続きが他言語には内重要な概念の一つに「ポリモフィズム」があります

~っぽい

~に関する|これまでもちらほらと動的メモリの割り当てに関する話が出てきました

まさか

まい|メンバ関数は、そのクラスのオブジェクトの「ふるまい」を定義することができます

きり

いったい(一体)

ふり

どうやら

おかげで

さらに(更に)|さらにデストラクタ関数は、仮引数も受け取らない(渡せない)という特徴があります

すでに(既に)|すでにわかっているように、クラスの概念は構造体に酷似しています

つい

むしろ|それは、むしろ余計なバグを生む可能性すらありますね

さえ

~になれる

~に違いない|これは、通常の関数とまったく違いはありません

なかなか

~ために|しかし、マクロ関数は仮引数の展開を正確に行うために括弧をつけます

~ず|コンストラクタは、グローバル、ローカル問わず、オブジェクト生成時に発生しますが

~によると|throw による例外を投げた場合も catch することができます

~代わり|template の引数の並びで、classの代わりに typename キーワードを使っています

ようにする|例えば不正な値は代入できないようにするなど、セキュリティを高めることができます

~始める

~ても|総合開発環境を用いてもかまいませんし、メモ帳などのエディタを用いてもかまいません

~として|一方の知識がかけていても、C/C++プログラマとしては不自由を覚えることでしょう

よう|に昔はこのようにC++が記述されていたという程度で良いでしょう

こそ|ようこそ

~ないうちに

どうしても

~がち|このようなミスは、C++のようなオブジェクト指向でありがちです

せいぜい

限る

~とともに~|しかし、関数が終了するとともにオブジェクトが破棄されるためデストラクタが呼び出されます

~たび~

すぎない(過ぎない)

おいて(於いて)|デフォルト引数は、関数のオーバーロードにおいて
曖昧な状態になることがあるので注意してください

~げ

つもりで

02.SQLWORDS

★:v、☆:n、●:adj、○:adv、■:help/con
2.1 SELECT文とは
1、データ
2、検索
★3、使われる
4、のが
5、SELECT文
6、である
7、とは
8、どういった
9、ものか
10、ということ
11、解説 (かいせつ)
2.2 すべての列を表示させる
12、基本型
13、マスターする
■14、ために
15、最も
16、シンプルな
17、すべて
18、列
★19、表示させる
20、方法
2.3 特定の列を表示させる
21、必要な
22、だけを
★23、表示される
24、SELECT句で
★25、表示させたい
26、を指定して
2.4 条件に一致した情報の抽出(WHERE句)
27、行
28、取り出す
☆29、抽出条件
30、(WHERE句)
31、記述方法の解説
2.5 特定の文字を含む情報の抽出(LIKE演算子)
☆32、パターンマッチング
★33、と言われる
34、特定の文字
35、や文字列
36、を含んだ
37、おこなう
38、使用する
39、LIKE演算子
40、メタ文字
41、使い方
2.6 複合条件を指定して抽出 (AND,OR,NOT)
42、より
43、高度なデータ
44、AND、ORとNOT
45、を使った
46、条件式
2.7 範囲を指定して情報を抽出する(BETWEEN)
47、数値の範囲
48、抽出する
■49、ときに
50、BETWEEN演算子
2.8 並べ替え(ソート)(ORDER BY句)
51、一定
52、順序で
★53、並べ替える(ソート)
2.9 重複したデータを取り除く(DISTINCT)
54、重複した
55、行がある
56、場合、
57、1行にまとめて
3.1、表の結合
58、リレーショナル
★59、データベースにおける
★60、表の結合
61、についての解説。
62、缩小 [しゅくしょうする]
3.2、 計算式を使用する
63、計算式
を記述する
3.3、表を結合し、抽出条件を指定する
表を結合して抽出条件を記述する方法の解説
64、商品表の商品CDと売上明細の商品CDが一致する
★65、行で表を結合する。
■66、かつ
67、売上Noが1であるもの
3.4、グループ化を行う(GROUP BY句)
68、グループ化する
3.5、グループ化されたデータを並べ替える
69、グループ化されたデータ
70、をORDER BY句で
★71、並べ替えをおこなう
72、合計金額の降順にソート
3.6、グループを抽出 (HAVING句)
73、GROUP BY句によって
74、グループ化されたデータ
★75、をHAVING句を指定して条件にあった
★76、グループを抽出する。
77、売上Noと売上金額合計を表示
78、売上金額が3000以上の行
3.7、列に別の名前を付ける(列の別名指定)
79、実行結果で
80、通常
81、しかし、
★82、列の別名指定を行うことで、
83、列名を別の名前で
84、表示できるようになる。
3.8、表に別の名前を付ける(表の別名指定)
85、列名と同じく
★86、表も別の名前を付けることができる。
87、実現できる
88、表の自己結合
89、も併せて
90、解説している。
3.9、抽出結果を元にさらに抽出をおこなう(副問い合わせ)
91、これを副問い合わせという。
92、基本的な動作
★3.10、表の結合と副問い合わせを組み合わせて検索
93、副問い合わせ
94、を使ったデータ
3.11、副問い合わせの抽出結果が複数になる場合

95、抽出結果が複数になる
96、場合の抽出条件
3.12、EXISTS述語を使った相関副問い合わせ
97、一行ずつチェックすることができる。
98、これを相関副問い合わせという。
99、実行順序などを解説。
3.13、INNER JOIN を使って表を結合する
100、以外に
101、表を結合することもできる。
3.1——、LEFT JOIN とRIGHT JOIN (外部結合)
102、表の結合には、内部結合と外部結合の2種類がある。
102、内部結合と外部結合の違い、
103、外部結合による

01.SQLINDEX

SQL講座

2.1 SELECT文とは
データの検索(抽出)に使われるのがSELECT文である。SELECT文とはどういったものかということの解説。
2.2 すべての列を表示させる
SELECT文の基本型をマスターするために、最もシンプルなすべての列を表示させる方法を解説。
2.3 特定の列を表示させる
必要な列だけを表示されるために、SELECT文のSELECT句で表示させたい列の指定方法を解説。
2.4 条件に一致した情報の抽出(WHERE句)
必要な行だけを取り出すために、抽出条件(WHERE句)の記述方法を解説
2.5 特定の文字を含む情報の抽出(LIKE演算子)
パターンマッチングと言われる特定の文字や文字列を含んだデータの抽出をおこなうために使用するLIKE演算子とメタ文字の使い方の解説

SELECT 氏名,学科,年齢,性別
FROM 学籍表
★WHERE 氏名 LIKE '石%'
2.6 複合条件を指定して抽出 (AND,OR,NOT)
より高度なデータの抽出を行うために、AND、ORとNOTを使った条件式の記述方法の解説。

★SELECT 氏名,性別,学科,年齢
FROM 学籍表
WHERE (性別='女' OR 学科='公務員') AND 年齢 > 20
2.7 範囲を指定して情報を抽出する(BETWEEN)
数値の範囲を指定してデータを抽出するときに使用するBETWEEN演算子の記述方法

①SELECT 氏名,学科,年齢,性別
FROM 学籍表
WHERE 年齢 >= 19 AND 年齢<=21
②SELECT 氏名,学科,年齢,性別
FROM 学籍表
WHERE 年齢 BETWEEN 19 AND 21
③SELECT 氏名,学科,年齢,性別
FROM 学籍表
WHERE 年齢 IN(19,20,21)
2.8 並べ替え(ソート)(ORDER BY句)
抽出したデータを一定の順序で並べ替える(ソート)ときに指定するORDER BY句の記述方法

①SELECT *
FROM 学籍表
ORDER BY 年齢 ASC
② SELECT * ← すべての列を表示
FROM 学籍表
WHERE 学科='情報' ← 学科が情報を抽出する
ORDER BY 年齢 DESC ← 年齢の降順に並べ替える
2.9 重複したデータを取り除く(DISTINCT)
抽出結果で重複した行がある場合、1行にまとめて表示するDISTINCTの指定方法

SELECT DISTINCT 出身地
FROM 学籍表
3.1、表の結合
リレーショナルデータベースにおける表の結合についての解説。

① SELECT *
FROM 売上表,顧客表 ← 使用する表をすべて記述する
WHERE 売上表.顧客CD=顧客表.顧客CD

売上表の顧客CDと顧客表の顧客CDが一致する行で表を結合する
3.2、 計算式を使用する
SELECT句に計算式を記述する方法の解説

①SELECT 売上No,商品名,単価,数量, 単価*数量 ← 計算式
FROM 商品表, 売上明細
WHERE 商品表.商品CD=売上明細.商品CD ← 表の結合
3.3、表を結合し、抽出条件を指定する
表を結合して抽出条件を記述する方法の解説
①SELECT 売上No,商品名,単価,数量, 単価*数量

FROM 商品表, 売上明細
WHERE 商品表.商品CD=売上明細.商品CD AND 売上No=1

商品表の商品CDと売上明細の商品CDが一致する行で表を結合する。かつ売上Noが1であるものを抽出する
3.4、グループ化を行う(GROUP BY句)
抽出したデータをグループ化する方法の解説

① SELECT 売上No,SUM(数量) ← 売上Noと売上金額の合計
FROM 売上明細
GROUP BY 売上No ← 売上Noでグループ化を行う
②SELECT 売上No,SUM(単価*数量) ← 売上Noと売上金額合計
FROM 商品表, 売上明細
WHERE 商品表.商品CD=売上明細.商品CD

商品表と売上明細を商品CDで結合
GROUP BY 売上No ← 売上Noでグループ化を行う
3.5、グループ化されたデータを並べ替える
グループ化されたデータをORDER BY句で並べ替えをおこなう

★SELECT 売上No,SUM(単価*数量)
FROM 商品表, 売上明細
WHERE 商品表.商品CD=売上明細.商品CD←表の結合
GROUP BY 売上No ← 売上Noでグループ化をおこなう
ORDER BY SUM(単価*数量) DESC←合計金額の降順にソート
3.6、グループを抽出 (HAVING句)
GROUP BY句によってグループ化されたデータをHAVING句を指定して条件にあったグループを抽出する。

①SELECT 売上No,SUM(単価*数量) ← 売上Noと売上金額合計を表示
FROM 商品表, 売上明細
WHERE 商品表.商品CD=売上明細.商品CD ← 表の結合条件
GROUP BY 売上No ← 売上Noでグループ化をおこなう
HAVING SUM(単価*数量) >=3000 ←売上金額が3000以上の行を抽出する
3.7、列に別の名前を付ける(列の別名指定)
SELECT文の実行結果で表示される列名は、通常表の列名が表示される。しかし、列の別名指定を行うことで、列名を別の名前で表示できるようになる。

① SELECT 商品名,単価,数量,単価*数量 AS 売上金額
FROM 売上表
WHERE 日付='2003/1/3'
3.8、表に別の名前を付ける(表の別名指定)
列名と同じく表も別の名前を付けることができる。表の別名指定を行うことで、実現できる表の自己結合も併せて解説している。

① SELECT *
FROM 売上表 X, 顧客表 Y
WHERE X.顧客CD=Y.顧客CD
② SELECT 社員表.社員名,リーダー.社員名 AS リーダー
FROM 社員表,社員表 リーダー
WHERE 社員表.リーダー=リーダー.社員No
③ SELECT 社員表.社員名,リーダー.社員名 AS リーダー
FROM 社員表,社員 リーダ
WHERE 社員表.リーダー=リーダー.社員No AND
社員表.社員名 <> リーダー.社員名
3.9、抽出結果を元にさらに抽出をおこなう(副問い合わせ)
WHERE句の抽出条件にSELECT文を記述し、抽出条件にすることができる。これを副問い合わせという。副問い合わせの基本的な動作についての解説

① SELECT 顧客名
FROM 顧客表
WHERE 顧客CD=(SELECT 顧客CD FROM 売上表 WHERE 売上No=1)
3.10、表の結合と副問い合わせを組み合わせて検索
表の結合と副問い合わせを使ったデータの抽出方法の解説

SELECT 売上No,単価,数量,単価*数量
FROM 商品表,売上明細
WHERE 商品表.商品CD=売上明細.商品CD←商品表と売上明細の結合
AND 単価>=(SELECT AVG(単価) FROM 商品表)
3.11、副問い合わせの抽出結果が複数になる場合
副問い合わせの抽出結果が複数になる場合の抽出条件の記述方法の解説

① SELECT 売上No,商品名,単価,数量,単価*数量
FROM 商品表,売上明細
WHERE 商品表.商品CD=売上明細.商品CD AND
売上No IN(SELECT 売上No FROM 売上表 WHERE 日付="2001/06/27")
3.12、EXISTS述語を使った相関副問い合わせ
主問い合わせの抽出結果を副問い合わせ側で一行ずつチェックすることができる。これを相関副問い合わせという。EXISTSを指定したときのSELECT文の実行順序などを解説。

① SELECT 商品CD,商品名
FROM 商品表
WHERE EXISTS
(SELECT * FROM 売上明細 WHERE 売上明細.商品CD = 商品表.商品CD)

SELECT 商品CD,商品名
FROM 商品表
WHERE NOT EXISTS
(SELECT * FROM 売上明細 WHERE 売上明細.商品CD = 商品表.商品CD)
3.13、INNER JOIN を使って表を結合する
表の結合指定はWHERE句で指定する以外にFROM句でINNER JOINを指定して表を結合することもできる。INNER JOINを使った表の結合方法の解説。
3.1——、LEFT JOIN とRIGHT JOIN (外部結合)
表の結合には、内部結合と外部結合の2種類がある。内部結合と外部結合の違い、外部結合による表の結合方法を解説。

ComWords

 

ただし

しかし

また|また、それぞれのオブジェクトのデストラクタ関数で2度にわたって同じ領域が解放される危険性もあります

あるい|関数にオブジェクトを渡したり、あるいは戻り値として受け取った場合

かつ|比較的大規模な、かつ複雑なプログラミングに適している言語です

すなわち|すなわち指定されなかったときに使う値を持たせるということです

いずれか|または定義のいずれかで

及び|A及びBである場合

もしくは|Aの場合、もしくはBの場合。

さらに(更に)

すでに(既に)

つい

むしろ

さえ

なかなか

~ために

~ず

~によると

~代わり

~始める

~ても

~として

ように

こそ

~ないうちに

どうしても

~がち

せいぜい

限る

~とともに~

~たび~

すぎない(過ぎない)

おいて(於いて)

~げ

つもりで

JLPT N4 Grammar List

~し|関数はオブジェクトを返す時に複製を作成し、それを戻り値として返します

そうです|そうでなければ Di_Gi_Gharat の paint() が呼び出されます

てみる|(うたがわしい)疑わしければ、シフトするなどして変数 i を再び分解してみると面白いでしょう

なら|少なくとも、あなたがプログラマなら 10 = obj は奇妙(きみょう)に見えるでしょう

(period)に(frequency)|しかし、ある名前空間のメンバを数百回も使う場合

~がほしい|

~たがる|

~かもしれない|

~たらどうですか|

Number+も|

しか~ない|メンバ関数内からしかアクセスできない、オブジェクトを表すポインタです

~ておく|様々な型の catch ブロックを(そなえる)備えておくことができます

~よう|一部正常に動作しない関数などの存在があるようですが

~おう|

~てあげる|最後に、コピーコンストラクタの実用例をサンプルとしてあげる

~てくれる|new 演算子malloc() と違って、割り当てるべきバイト数を自動で計算してくれます

~てもらう|

~ていただけませんか|C++の継承が、いかに(じゅうなん)柔軟なものかは前回で理解していただけたと思います

~といいです|

~てすみません|

~そうです|

~させる|これをより発展させると、動的なポリモーフィズムが実現できます

~なさい|酷な話ですが両方覚えなさいと筆者は心から叫びたい

~ば/~れば|出力ストリームをcoutに指定すれば、指定した値をコンソールに出力します

~ても|こと、CとC++は別物とは考えず同じ言語であると考えてもかまいません

~たら|クラスのメンバで、動的に割り当てたメモリへのポインタがあるとうんたらと言う話です

~なくてもいい|

~みたい|

~てしまう|どちらにも対応してしまうため、表現が曖昧になっています

Dictionary form+と|

~ながら|C言語の構造体と比較しながら、少しずつその機能を紹介します

~ばよかった|よくある話、CとC++どっちを勉強すればよいですかという質問が多いです

~てくれてありがとう|

~てよかった|例えば、次のような場合コンパイラはどちらの関数を使ってよいのか判断できません

~はずです|bool型変数を出力するなどをすれば、内部動作が理解できるはずです

~ないで|反面オーバーヘッドが大きいことを忘れないでく ださい

~かどうか|

~という~|記述したソースを*.cppという拡張子にしてコンパイルしてください

~やすい|このような場合 + 演算子で行えれば、直感的でわかりやすいです

~にくい|

~られる|場合によっては catch でサポートしていない例外が投げられるかもしれません

~てある|こと、CとC++は別物とは考えず同じ言語であると考えてもかまいません

~ているあいだに,~|ただし template 文と関数の間に別の文を挿入することはできません

~く/ ~にする|オブジェクトの発生時に常に呼び出されるため、初期化に必要な処理のみにするのが好ましいで すね

~のようてほしい|

のに|C++プログラムを読み書きするのに、Cプログラマが最低限知るべきことを紹介します

~のような|streamは出力する場所であり、C言語のファイル構造体のポインタのようなものに当たります

~のように|次のように、複数の値を出力することが可能です

~させられる|

~ことにする|インライン関数は、実際に呼び出すことはなく呼び出しごとにインラインで展開する関数です