2017-01-29 17 views
0

私はMySQLを学んでいますが、これはおそらく私が聞くことができる基本的な質問の中で最も基本的なものですが、私は構文を理解したいと思っています。特定のテーブルからカラムを選択する

私は3つの異なるデータベースを作成したMySQLスクリプトを持っています。特定のデータベースのテーブルからすべてのフィールドを選択する場合は、

SELECT * from database1.table1 

を使用しますか?それとも、ただ

SELECT * from table1 

だろうと私は別のテーブルから2つのフィールドのみを選択したい場合、それは

SELECT field1, field2 from database1.table2 

か、再度テーブル名だけでしょうか?

+0

「USE dbName;」ステートメントを参照してください。すでに多くのクライアントがデフォルトで行うdbを選択した場合は、db – Mihai

+0

を指定する必要はありません。データベースを指定したかどうかによって異なります。はいの場合は、すでにクエリー文で指定したデータベースを指定する必要はありません。さもなければあなたはそうする。 – Shiping

+0

私はデータベースを作成した後にこれらのコマンドをスクリプトの中に張っているだけですが、これは私が使用するでしょうか? – salivad

答えて

0

どちらの形式も実際には問題ありません。 SQLでは、名前を修飾して、dbオブジェクトの場所を明示的に指定できます。たとえば、2つの異なるスキーマにtable2がある場合(これは "database"ではなくbtw)、正しい用語です。

既述のように、スキーマをリファレンス(テーブル2など)に常に追加する必要がないように、デフォルトスキーマを設定できます。スキーマが指定されていない場合は、デフォルトのスキーマ(USE schemaコマンドで設定)が代わりに使用されます。必要に応じて、明示的なスキーマ(デフォルトまたはその他のものとして設定されているもの)を使用することもできます。これは、デフォルトのスキーマにないオブジェクトにアクセスする場合に役立ちます。

関連する問題