膨大な量のデータが日々生成される時代において、データは事業運営の意思決定において重要な役割を果たします。したがって、データを処理するにはデータベースが必要であり、これによりデータベース管理システムを理解する必要があります。さまざまなデータベース管理システムを備えたMSSQLServerは、最も人気のあるリレーショナルデータベース管理システムの1つです。このタイプのDBMSは、ユーザーが関連するデータを識別してアクセスできる構造を使用します。 データベース内の別のデータに。したがって、MS SQL Serverを知っていると、データベース管理者になるための扉が開かれます。あなたはすでにこれらの事実を知っていると思います。これにより、このMSSQLServerインタビューの質問の記事にたどり着きました。
Microsoft SQL Serverのインタビューの質問に関するこの記事では、インタビューで尋ねられたMSSQLServerに関連する上位の質問について説明します。これらの質問は、この分野で優れたスキルを持つ人々と相談した後に収集されます。
始めましょう!
Q1。 SQLServerとMySQLの違いに言及してください。
SQL Server | MySQL |
Microsoftが開発 | Oracleが開発 |
ライセンスソフトウェア | オープンソースソフトウェア |
C#、Java C ++、PHP、Visual Basic、Perl、Python、Rubyなどをサポート | PHP、Perl、Python、Rubyなどをサポート |
実行中のデータベースファイルの操作は許可されません | 実行中のデータベースファイルの操作を許可します。 |
プロセスの途中でクエリをキャンセルできます | プロセスの途中でクエリをキャンセルすることはできません。 |
データのバックアップ中は、データベースをブロックしません | データのバックアップ中は、データベースをブロックします |
大量の運用ストレージスペースを使用します。 | 必要な運用ストレージスペースが少なくて済みます。 |
エクスプレスモードとカスタムモードで利用できます。 | MySQLCommunityEditionおよびMySQLEnterpriseEditionで使用可能 |
Q2。 SQL Serverエージェントで何を理解していますか?
SQL Serverエージェントは、ジョブのスケジュールと実行に使用されるWindowsサービスです。ここで、各ジョブには1つ以上のステップが含まれ、各ステップにはタスクが含まれます。そのため、サーバーエージェントはSQL Serverを使用してジョブ情報を保存し、スケジュールに従ってジョブを実行します。
SQL Serverエージェントの主なコンポーネントは、ジョブ、スケジュール、オペレーター、およびアラートです。
例:
企業が毎週金曜日の午後9時に会社のサーバーのバックアップを取りたい場合は、このタスクを非常にうまく自動化して、スケジュールを独自に実行させることができます。 。シナリオでは、バックアップでエラーが発生し、SQL Serverエージェントがイベントを記録して、対応するチームに通知します。
Q3。 SQLServerのさまざまな認証モードについて説明します。
SQL Serverのさまざまな認証モードについて説明する前に、SQLServerでユーザーを認証するために認証モードが使用されていることを説明します。データベースエンジンのセットアップ中に認証モードが選択されます。したがって、Microsoft SQL Serverのセットアップ方法を知りたい場合は、私の記事を参照してください。
SQLSERVERが提供するさまざまな認証モードは次のとおりです。
- Windows認証モード: このモードは、Windowsアカウントを介してサーバーに接続するために使用されます。ここで、サーバーは認証の目的でコンピューターのユーザー名とパスワードを取得します。また、このモードではSQLサーバー認証モードが無効になっています。
- 混合モード: 混合モードは、SQLServer認証またはWindows認証のいずれかを使用してSQLServerのインスタンスに接続するために使用されます。このモードでは、ユーザー名とパスワードはデータベースのユーザーによって設定されます。
Q4。ローカル一時テーブルとグローバル一時テーブルの違いについて説明します。
ローカル一時テーブル | グローバル一時テーブル |
これらのテーブルは、接続中またはそのステートメントの期間中にのみ存在します。 | これらのテーブルはデータベースに永続的に存在し、接続が閉じられると行のみが削除されます。 |
構文: CREATE TABLE#<テーブル名> | 構文: CREATE TABLE##<テーブル名> |
Q5。 SQL Serverのバージョンを確認するにはどうすればよいですか?
SQL Serverのバージョンを確認するには、次のコマンドを使用できます。
SELECT @@version
@@ VERSIONは、1つのnvarchar文字列として出力を提供します。
Q6。シングルユーザーモードとは何ですか。また、SQLServerをシングルユーザーモードで起動するために従う必要のある手順は何ですか。
SQLServerのインスタンスをシングルユーザーモードで起動したい場合がよくあります。これは、他のデータベースシステムからデータを回復する場合、またはサーバー構成を変更する場合に実行できます。
シングルユーザーモードでSQL Serverを起動すると、コンピューターのローカルAdministratorsグループのメンバーは、sysadminとしてSQLServerのインスタンスに接続されます。
シングルユーザーモードでデータベースを起動すると、次のイベントが発生します。
- 1人のユーザーがサーバーに接続します。
- チェックポイント プロセスは起動時にデフォルトで実行されるため、実行されません。
また、シングルユーザーモードでSQL Serverのインスタンスに接続する前に、SQLServerエージェントサービスを停止する必要があることに注意してください。
- シングルユーザーモードでSQL Serverを起動するには、次のコマンドを使用します:
sqlcmd –m
- Management Studioのクエリエディターを介して接続するには、
-m"Microsoft SQL Server Management Studio - Query".
Q7。 SQL Serverプロファイラーとは何ですか?
Microsoft SQL Server Profilerは、トレースの作成と管理に使用されるインターフェイスです。また、トレース結果を分析して再生します。ここで、イベントはトレースファイルに保存され、後で分析されるか、問題のデバッグ中に特定の一連の手順を再生するために使用されます。
SQL Server Profilerは、次のようなアクティビティに使用できます。
- 問題の根本原因を見つける
- ワークロードを処理するためのSQLServerのパフォーマンスの監視。
- 遅いクエリの診断
- 問題の原因となっている一連のSQLステートメントをキャプチャし、問題をデバッグしながら、テストサーバーで問題をさらに再現します。
- また、パフォーマンスカウンターを相互に関連付けて、問題を簡単にデバッグするのにも役立ちます。
Q8。 SQLServerが実行されているTCP/IPポートは何ですか?
SQLServerが実行されるTCP/IPポートは1433です。
Q9。 SQLサーバーのサブクエリとは何ですか?その特性を説明してください。
サブクエリは、データベースからデータまたは情報を取得するためにクエリが定義されている別のクエリ内のクエリです。サブクエリでは、外部クエリはメインクエリと呼ばれ、内部クエリはサブクエリと呼ばれます。サブクエリは常に最初に実行され、サブクエリの結果はメインクエリに渡されます。 SELECT、UPDATE、またはその他のクエリ内にネストできます。サブクエリでは、>、<、=。
などの比較演算子を使用することもできます。サブクエリのプロパティは次のとおりです。
- メインクエリの前に最初に実行する必要があるため、括弧で囲む必要があります
- 複数のクエリを含めることができます。
- サブクエリにはORDER BY句を含めることはできませんが、WHERE、GROUP BY、およびHAVINGCLAUSEを含めることができます
- サブクエリは、メインクエリの比較演算子の右側にある必要があります
- サブクエリには、SELECT句とFROM句を含める必要があります。
Q10。クラスタ化された状態でシングルユーザーモードを開始するにはどうすればよいですか インストール?
クラスター化されたインストールでは、SQL ServerはDLLを使用可能な接続を使用するため、サーバーへの他の接続をすべてブロックします。
この状態で、SQL Serverエージェントリソースをオンラインにしようとすると、グループに構成されている可能性があるため、SQLリソースを別のノードにフェイルオーバーする可能性があります。したがって、クラスターインストールでシングルユーザーモードを開始するには、次の手順に従います。
- 高度なプロパティに移動します および-m起動パラメータを削除します。
- 次に、SQLServerリソースをオフラインにします。
- コマンドプロンプトから次のコマンドを発行し、グループの現在の所有者ノードにいることを確認します。
net start MSSQLSERVER /m.
- 次に、クラスター管理者から確認するか、クラスター管理コンソールをフェイルオーバーして、SQLServerリソースがまだオフラインであるかどうかを確認する必要があります。
- 次に、次のコマンドを使用してSQL Serverに接続し、必要な操作を実行します:
SQLCMD -E -S<servername>.
- 操作が完了したら、コマンドプロンプトを閉じてから、クラスター管理者を介してSQLおよびその他のリソースをオンラインに戻す必要があります。
Q11。 SQL Serverでのレプリケーションによって何を理解しますか? SQLServerのさまざまな種類のレプリケーションについて説明します。
Microsoft SQL Serverでのレプリケーションは、複数のサーバー間でデータを同期するプロセスです。これは通常、レプリカセットによって実行され、これらのセットは、異なるサーバー上で冗長性と高可用性を備えたデータの複数のコピーを提供します。
これだけでなく、レプリケーションは障害から回復するためのメカニズムを提供します。また、単一のサーバーからの依存関係を削除して、単一のサーバーからのデータの損失を保護します。
SQL Serverでのレプリケーションには次の3種類があります:
- レプリケーションのマージ: このレプリケーションは、さまざまなソースからのデータを単一の集中型データベースにグループ化し、サーバーからクライアント環境に使用されます。
- トランザクションレプリケーション: このレプリケーションは、パブリッシャーからサブスクライバーにデータを配布するプロセスであり、サーバー間環境で使用されます。
- スナップショットレプリケーション: このレプリケーションは、特定の瞬間に表示されるとおりにデータを配布し、まれにしか変更されないデータのレプリケーションに使用されます。
Q12。 MS SQL ServerとOracleの違いは何ですか?
MS SQL Server | Oracle |
シンプルで簡単な構文を提供します。 | 複雑で比較的効率的な構文で構成されています。 |
TransactSQLまたはT-SQLを使用します。 | PL/SQLを使用 |
クエリの最適化をサポートしていません。 | スタークエリ最適化を使用します。 |
トランザクションプロセスでのロールバックは許可されていません。 | トランザクションプロセス中にロールバックが許可されます。 |
増分バックアップ、部分バックアップ、および完全バックアップを許可します | インクリメンタル、フル、ファイルレベル、および差分バックアップを許可します。 |
クラスタリングをサポートしていません。 | クラスター構成のサポートを提供します。 |
INSERT、UPDATE、DELETEなどのステートメントは連続して実行されます。 | INSERT、UPDATE、DELETE、MERGEなどのステートメントは並列に実行されます。 |
ジョブはSQLServerエージェントを介してスケジュールされます | ジョブはOracleスケジューラまたはOEMを介してスケジュールされます |
Q13。 INTENTロックで何がわかりますか?
Microsoft SQL Serverは、データが読み取られるか、データ内で何かが変更されるたびに、ロック階層を使用します。行が読み取られるたびに、SQLServerは共有ロックを取得します。同様に、行を変更するとすぐに、SQLServerは排他ロックを取得します。これらのロックは互いに互換性がありません。したがって、INTENTロックは、ロック階層内でどのロックが適用されているかをより高いレベルで示すために使用されます。 INTENTロックには主に3種類あります。
- インテント共有ロック(IS): このロックは、行レベルで共有ロックがある場合に使用されます。
- インテントアップデートロック(IU): インテント更新ロックは、行レベルで更新ロックがある場合に使用されます。
- Intext Exclusive Lock(IX): このロックは、行レベルで排他ロックがある場合に使用されます。
Q14。 SQL Serverインスタンスを非表示にするために実行する必要のある手順は何ですか?
SQLServerインスタンスを非表示にするために実行する必要のある手順は次のとおりです。
- SQLServer構成マネージャーを開きます SQLServerネットワーク構成を展開します。
- 次に、プロトコルに移動します およびSQLServerのインスタンスを選択 。
- 後で、インスタンスを右クリックして、プロパティを選択します
- 次に、[[インスタンスを非表示]ボックスで 、[フラグ]タブに移動します 、[はい]を選択します 。
- 最後に、[ OK]をクリックします ダイアログボックスを閉じます。
Q15。 SQL Serverのデータ品質サービスで何を理解していますか?
SQL Serverのデータ品質サービスは、知識主導型のデータ品質製品です。 SQL Server Data Quality Services(DQS)を使用すると、ユーザーはナレッジベースを構築し、それを使用して、データの修正、重複排除、強化、標準化などのタスクを実行できます。
これとは別に、DQSはプロファイリングも提供し、クラウドベースのデータサービスを利用してデータクリーニングを実行できるようにします。
DQSは2つのコンポーネントで構成されています:
- データ品質サーバー: これは、データ品質の機能とストレージを備えた3つのSQLServerカタログで構成されるSQLServerインスタンス機能です。
- データ品質クライアント: これは、ユーザーがコンピューター支援のデータ品質分析を実行し、データ品質をインタラクティブに管理するために使用できるSQLServerの機能です。
Q16。 SQLサーバーのマジックテーブルについて説明する
マジックテーブルは、SQL Serverで自動的に作成されたテーブルであり、(SELECT、DELETE、INSERT、UPDATEなど)などのDML操作に挿入され更新された値を内部的に格納するために使用されます。
Q17。 で何を理解していますか データキャプチャの変更 ?
Change Data Captureまたは最も一般的にはCDCとして知られているものは、テーブルに適用されたINSERT、UPDATE、DELETEアクティビティを記録するために使用されます。そのため、名前が示すように、Change Data Captureは、最近変更されたデータをキャプチャするために使用されます。ターゲット環境に変更を適用するために必要な列情報とメタデータは、変更された行に対してキャプチャされ、最終的に変更テーブルに格納されます。これらの変更テーブルは、元の列構造の鏡像です。
Q18。トリガーによって何を理解し、さまざまな種類について言及しますか?
トリガーは、テーブルに対してINSERT、DELETE、またはUPDATEコマンドが実行されるたびにSQLコードのバッチを実行するために使用されます。したがって、基本的にトリガーは、データ操作操作に基づいてデータが変更されるたびに自動的に実行されます。
さまざまな種類のトリガーは次のとおりです。
- 挿入
- 更新
- 削除
- 代わりに
Q19。再帰的なストアドプロシージャで何を理解しますか?
再帰的なストアドプロシージャは、問題を解決する方法であり、これを使用して何度も解決策にたどり着くことができます。
Q20。 ログ配布について説明し、その利点について説明します。
データベースをあるスタンドアロンサーバーから別のスタンドアロンスタンバイサーバーに復元するためのバックアップの自動化プロセスは、ログ配布と呼ばれます。ログ配布は、1つのサーバーに障害が発生した場合でも、スタンバイサーバーがサーバー自体のデータと同じデータを持つようにするため、ディザスタリカバリソリューションの1つとして理解することもできます。
ログ配布の利点は次のとおりです。
- メンテナンスが少なくて済み、セットアップも簡単です
- 作成されたセカンダリデータベースは、読み取り専用の目的で使用されます。
- 複数のセカンダリスタンバイサーバーを作成できます
- セカンダリサーバーがログバックアップを復元(適用)するときに、プライマリサーバーがプライマリデータベースのログをバックアップするまでの時間に、ユーザーが指定した遅延を許可します。
Q21。トレースフラグとは何ですか SQL Serverで使用されるいくつかの一般的なトレースフラグについて言及しますか?
これらのフラグは、サーバーの動作を変更したり、サーバーの特性を設定したりするために使用されます。 SQLServerで使用されるいくつかの一般的なトレースフラグは次のとおりです
- 1204、1205、1222 – これらのフラグは、デッドロック情報に使用されます。
- 174 – このトレースフラグにより、SQLServerデータベースエンジンプランのキャッシュバケット数が64ビットシステムで40,009から160,001に増加します。
- 1118 – 混合ページ割り当てではなく、均一なエクステント割り当てを強制します–(SQL 2005および2008)TempDBの競合を減らすため。
- 652 –このトレースフラグは、ページのプリフェッチスキャンを無効にします。
- 2566 – DATA_PURITYオプションが指定されていない限り、データ純度チェックなしでDBCCCHECKDBコマンドを実行するために使用されます。
Q22。 SQLServerのSUBSTRとCHARINDEXの違いに言及してください。
SUBSTR | CHARINDEX |
指定された文字列内の文字列の特定の部分を返すために使用されます | 指定された文字列の文字位置を返すために使用されます |
例: SUBSTRING(‘Edureka’、1,4) 出力: Edur | 例: CHARINDEX(‘r’、’Edureka’、1) 出力: 4 |
Q23。 SQLServerのAnalysisServicesで何を理解していますか?
Microsoft SQL Serverの分析サービスは、ビジネス分析と意思決定のサポートで使用される分析データエンジンです。このサービスは、Power BI、Microsoft Excel、その他の視覚化ツールなどのクライアントアプリケーションとレポートにエンタープライズグレードのセマンティックモデルを提供します。
Analysis Servicesは、次のようなプラットフォームで利用できます:
- Azure Analysis Services
- Power BI Premium
- SQLServer分析サービス
Q24。ミラーリングによって何を理解し、ミラーリングの利点について言及しますか?
SQL Serverのミラーリングは、トランザクションの点でプライマリサーバーと一貫性のあるホットスタンバイサーバーを維持するように設計されています。また、トランザクションログレコードはプリンシパルサーバーからセカンダリサーバーに送信されます。
ミラーリングの利点は次のとおりです:
- 自動フェイルオーバーメカニズムで構成されています。
- ログ配布よりも効率的で、堅牢です。
- プライマリサーバーはセカンダリサーバーとリアルタイムで同期されます
Q25。 開発者はいつSQLServerベースのカーソルを使用する必要があると思いますか?
SQL Serverベースのカーソルは、テーブルからすべてのデータをまとめて取得するのではなく、いつでもレコードを操作する場合に使用されます。ただし、カーソルはパフォーマンスに影響を与えるため、大量のデータが存在する場合は使用しないでください。カーソルを回避できないシナリオでは、一時テーブルを使用して処理するレコードの数を減らし、最終的にこれからカーソルを作成してみてください。
Q26。データベース設計は、SQL Serverベースのアプリケーションのパフォーマンスにどのような役割を果たしますか?
物理的および論理的な設計は、SQLServerベースのアプリケーションのパフォーマンスにおいて重要な役割を果たします。正しいデータが適切なテーブルにキャプチャされ、データアイテム間に適切な関係があり、データの冗長性が低減されていることを確認する必要があります。また、データベースを設計する際には、必要なすべてのシステム目標を達成するための反復プロセスであり、常に監視されていることを確認することをお勧めします。データベースの設計が設定されると、要件に応じて設計を変更することは非常に困難です。追加できるのは、新しい関係とデータ項目のみです。
Q27。 SQL Serverのユーザー定義関数で何を理解し、SQL Serverでユーザー定義関数を作成して実行する手順を説明しますか?
ユーザー定義関数は、ロジックを実装することにより、ユーザーのニーズに応じて記述された関数です。これらの種類の関数では、ユーザーは事前定義された関数に限定されず、単純なコードを記述することによって事前定義された関数の複雑なコードを単純化します。この関数は、スカラー値またはテーブルを返します。
ユーザー定義関数を作成するには、次の例を参照してください。
CREATE FUNCTION samplefunc(@num INT) RETURNS TABLE AS RETURN SELECT * FROM customers WHERE CustId=@num
上記で作成した関数を実行するには、次のコマンドを参照してください。
SELECT * FROM samplefunc(10)
Q28。データベースとSQLServerベースのアプリケーションが適切に機能することをどのように確認できますか?
開発者は、保存されている情報の種類、データの量とデータを確認する必要があります アクセスされます。
既存のシステムをアップグレードするシナリオでは、現在のデータを分析し、既存のデータボリュームが発生し、データへのアクセス方法を確認する必要があります。設計の問題領域を理解します。
新しいシステムを使用しているシナリオでは、キャプチャされるデータ、データの構成要素、およびそれらの間の関係に関する情報を保持する必要があります。データ項目。
Q29。 関係とは何ですか?DBMSのさまざまなタイプの関係について言及します
DBMSの関係は、2つのエンティティが相互に関連しているシナリオです。このようなシナリオでは、他のテーブルの主キーへの外部キー参照で構成されるテーブル。
- 1対1の関係 –表Aの単一の行が表Bの単一の行に関連している場合に使用されます。
- 1対多の関係 –テーブルAの1つの行がテーブルBの多くの行に関連している場合に使用されます。
- 多対多の関係 –テーブルAの多くの行をテーブルBの多くの行に関連付けることができる場合に使用されます。
- 自己参照関係 –テーブルAのレコードが同じテーブルのレコードに関連している場合に使用されます。
Q30。 SQLの結合とは何ですか?また、さまざまな種類の結合とは何ですか?
JOIN句は、2つ以上のテーブル間の関連する列に基づいて、それらのテーブルの行を結合するために使用されます。 2つのテーブルをマージしたり、そこからデータを取得したりするために使用されます。 SQLには4つの結合があります。つまり:
- 内部参加
- 右参加
- 左参加
- 完全参加
Q31。 DBCC CHECKDBが使用するコマンドは何ですか?
コマンドDBCC CHECKDBは、言及されたデータベース内のすべてのオブジェクトの物理的および論理的な整合性をチェックするために使用されます。そのために、次の操作を実行します。
- 実行 DBCC CHECKALLOC 上記のデータベースで。
- データベース内のすべてのテーブルとビューで、DBCCチェックテーブル コマンドが実行されます。
- DBCC CHECKCATALOGを実行します データベース上。
- 次に、言及されたデータベース内のすべてのインデックス付きビューのコンテンツを検証しました。
- また、FILESTREAMを使用してvarbinary(max)データをファイルシステムに保存しながら、ファイルシステムディレクトリとテーブルメタデータ間のリンクレベルの整合性を検証します。
- 最後に、データベース内のServiceBrokerデータを検証します。
したがって、DBCC CHECKDBコマンドを実行するだけで、自動的にDBCC CHECKALLOC、DBCC CHECKTABLE、またはDBCCCHECKCATALOGコマンドが実行されます。
また、DBCCは、メモリ最適化テーブルを含むが修復オプションを提供しないデータベースでサポートされていることに注意してください。これは、データベースを定期的にバックアップし、それらのバックアップをテストする必要があることを意味します。
Q32。 SQL ServerのCHECK制約によって何がわかりますか?
SQL ServerのCHECK制約は、列に格納されるデータの値またはタイプを制限するために使用されます。単一の列にCHECK制約を適用すると、先に進んでその特定の列に特定の値を適用できます。
例:
CREATE TABLE Customer ( Cust_ID int NOT NULL, FirstName varchar(255), Age int, City varchar(255), CONSTRAINT CHK_Customer CHECK (Age>20 AND City= 'Hyderabad') );
Q33。 何をする SQL ServerのCOALESCEで理解できますか?
この関数は、引数内の最初のnull以外の式を返すために使用されます。 COALESCEコマンドは、引数の複数の列からnull以外の値を返すために使用されます。
例:
SELECT COALESCE(CustID, CustName, Amount) from Customers;
Q34。 SQLServerでのFLOOR関数の使用法を説明します。
FLOOR関数は、非整数値を前の最小整数値に切り上げるために使用されます。この関数は、桁を丸めた後に一意の値を返します。
構文:
FLOOR(expression)
例:
FLOOR(7.3)
Q35。 Microsoft SQL Serverのロックをチェックするために使用されるコマンドは何ですか?
データベースのロックを確認するには、組み込みのストアドプロシージャsp_lockを使用できます。
構文
sp_lock [ [ @spid1 = ] 'session ID1' ] [ , [@spid2 = ] 'session ID2' ] [ ; ]
例:
データベースエンジンのインスタンスで現在保持されているすべてのロックを一覧表示するには、次のコマンドを使用します。
USE SampleDB; GO EXEC sp_lock; GO
Q36。テーブル内のレコード数をカウントする3つの方法を挙げてください。
テーブル内のレコード数をカウントする3つの方法は次のとおりです。
SELECT * FROM TableName; SELECT COUNT(*) FROM TableName; SELECT rows FROM indexes WHERE id = OBJECT_ID(TableName) AND indexid< 2;
Q37。 SIGN関数の使用法は何ですか?
この関数は、言及された数値がゼロ、正、および負であるかどうかを判別するために使用されます。したがって、0、+ 1、-1のいずれかが返されます。
構文:
SIGN(number)
例:
SIGN (0) returns 0 SIGN (21) returns 1 SIGN (-21) returns -1
Q38。その月の最初の平日を見つけるためのSQLクエリを作成しますか?
その月の最初の週の日を見つけるには、次のようにクエリを記述できます。
SELECT DATENAME(dw, DATEADD(dd, – DATEPART(dd, GETDATE()) + 1, GETDATE())) AS FirstDay;
Q39。データベースの名前を変更するために使用したコマンドに言及します。
データベースの名前を変更するには、次の方法でsp_renamedbコマンドを使用する必要があります。
sp_renamedb 'OldDatabaseName', 'NewDatabaseName';
Q40。 顧客テーブルから支払われた5番目に高い金額を見つけるためのクエリを記述します。
顧客のテーブルから支払われた5番目に高い金額を見つけるには、次のようにクエリを記述できます。
SELECT TOP 1 amount FROM (SELECT DISTINCT TOP 5 amount FROM customers ORDER BY amount DESC) ORDER BY amount;
Q41. How can we delete a table in SQL Server?
To delete a table in SQL Server, use the Delete command.
Syntax:
DELETE TableName
例:
DELETE Customers;
Q42. What is the purpose of UPDATE STATISTICS and SCOPE_IDENTITY() function ?
- UPDATE _STATISTICS is used to update the information used by indexes such as the distribution of key values for one or more statistic groups in the mentioned indexed view or table.
- SCOPE_IDENTITY is used to create identity value for tables in the current execution scope.
Q43. What do you understand by PHYSICAL_ONLY option in DBCC CHECKDB?
- The PHYSICAL_ONLY option is used to limit check to the integrity of the physical structure of the record headers, page, and also the allocation consistency of the database.
- The PHYSICAL_ONLY check is used to provide a small overhead check of the physical consistency of the database.
- Also, the PHYSICAL_ONLY option causes a shorter run-time for DBCC CHECKDB on large databases. So, it is generally recommended for frequent use on production systems.
Q44. Can you explain how long are locks retained within the REPEATABLE_READ and SERIALIZABLE isolation levels, during a read operation with row-level locking?
With REPEATABLE_READ and SERIALIZABLE isolation levels, locks are held during the transaction. But, if you consider READ_COMMITTED, then locks are held for isolation level.
Q45. Mention the differences between HAVING and WHERE clause.
HAVING | WHERE |
Used only with SELECT statement | Used in a GROUP BY clause |
Used with the GROUP BY function in a query | Applied to each row before they are a part of the GROUP BY function in a query |
注: Whenever GROUP BY is not used, HAVING behaves like a WHERE clause.
Q46. What do you understand by integration services in SQL Server?
Integration services is a platform offered by Microsoft to build enterprise-level data transformation solutions and integration. These services solve complex business problems by loading data warehouses, perform data wrangling, copy or download files, and manage SQL Server objects.
Also, integration services can extract and transform data from a wide variety of sources such as relational data sources, XML data files, load the data into more than a single database. So, basically, you can use the integration services to create solutions without coding, code complex tasks, program the extensive integration object model to create packages.
The integration services include good set of built-in tasks and transformations, graphical tools used for building packages and also contain the Catalog database to store, run and manage packages.
Q47. What do you understand by Hotfixes and Patches in SQL Server?
Hotfixes are single, cumulative software packages applied to live systems. This includes one or more files used to address a problem in a software product. Patches are a programs installed on the machines to rectify the problem occurred in the system and ensured the security of the system. So, basically hotfixes are a kind of patch offered by Microsoft SQL Server to address specific issues.
Q48. Can you name a few encryption mechanisms in SQL server?
These are few encryption mechanisms in SQL Server to encrypt data in the database:
- Transparent Data Encryption
- Symmetric Keys
- Asymmetric Keys
- Transact SQL functions
- Certificates
Q49. What are the options which must be set to allow the usage of optimistic models?
The READ_COMMITED_SNAPSHOT option and the ALLOW_SNAPSHOT_ISOLATION option must be set to allow the usage of optimistic models.
- The READ_COMMITTED_SNAPSHOT option is used for the read committed optimistic model.
- ALLOW_SNAPSHOT_ISOLATION option is used for the snapshot isolation level.
Q50. What are the common performance issues in SQL Server?
The common performance issues in SQL Server are as follows:
- Fragmentation
- Input/Output bottlenecks
- Blocking Queues
- Deadlocks
- Missing and unused indexes
So this brings us to the end of the SQL Server Interview Questions article. I hope this set of SQL Server Interview Questions will help you ace your job interview. All the best for your interview!
Check out this MySQL DBA Certification Training by Edureka, a trusted online learning company with a network of more than 250,000 satisfied learners spread across the globe. This course trains you on the core concepts &advanced tools and techniques to manage data and administer the MySQL Database. It includes hands-on learning on concepts like MySQL Workbench, MySQL Server, Data Modeling, MySQL Connector, Database Design, MySQL Command line, MySQL Functions, etc. End of the training you will be able to create and administer your own MySQL Database and manage data.
Got a question for us? Please mention it in the comments section of this “SQL Server Interview Questions” article and we will get back to you as soon as possible.