Sql-Interview

SQL Interview: 16: UNION and Column Aliases

This is a post in the SQL Interview series. These aren’t trick or gotcha questions, they’re just questions designed to scope out a candidate’s knowledge around SQL Server and Azure SQL Database. Section: Development Level: Intro Question: I execute the following query: SELECT st.SalesTerritoryID AS [ID], st.SalesTerritoryName AS [Name], st.DateCreated FROM dbo.SalesTerritories AS st UNION SELECT p.ProductID AS [Product], p.[Description], p.DateCreated AS [StartDate] FROM dbo.Products AS p; What alias will be returned for the each column in the returned results?

2025-02-04

SQL Interview: 15: Permission to create a temporary table

This is a post in the SQL Interview series. These aren’t trick or gotcha questions, they’re just questions designed to scope out a candidate’s knowledge around SQL Server and Azure SQL Database. Section: Security Level: Medium Question: User1 has CONNECT permission to a SQL Server and is a member of the db_datawriter role in the database Database1. User2 has CONNECT permission to the same SQL Server and is a member of the db_datareader role in the database Database1.

2025-01-31

SQL Interview: 14: Set operations using EXCEPT

This is a post in the SQL Interview series. These aren’t trick or gotcha questions, they’re just questions designed to scope out a candidate’s knowledge around SQL Server and Azure SQL Database. Section: Development Level: Medium Question: UNION and UNION ALL are commonly used to combine two sets of rows into a single set of rows. EXCEPT is another set operator. Can you explain what it does? Answer: EXCEPT is used to remove any rows in the first set of rows, if the same rows appear in the second set.

2021-04-29

SQL Interview: 13: Impact of optimize for adhoc workloads

This is a post in the SQL Interview series. These aren’t trick or gotcha questions, they’re just questions designed to scope out a candidate’s knowledge around SQL Server and Azure SQL Database. Section: Server Tuning Level: Advanced Question: SQL Server 2008 introduced a server option for optimize for adhoc workloads. Can you explain the problem that it is designed to solve, what most commonly causes the problem, and what impact this option has when you enable it?

2021-04-27

SQL Interview: 12: Using UNION vs UNION ALL

This is a post in the SQL Interview series. These aren’t trick or gotcha questions, they’re just questions designed to scope out a candidate’s knowledge around SQL Server and Azure SQL Database. Section: Development Level: Intro Question: Consider the following code: SELECT CustomerID, CustomerName FROM Sales.Customers WHERE BusinessCategory = 'Cafe' UNION SELECT CustomerID, CustomerName FROM Sales.Customers WHERE City = 'Toronto'; A: What would be the difference in results if the query was changed to use a UNION ALL instead of the UNION?

2021-04-22

SQL Interview: 11 Adding a column in the middle of a table's columns

This is a post in the SQL Interview series. These aren’t trick or gotcha questions, they’re just questions designed to scope out a candidate’s knowledge around SQL Server and Azure SQL Database. Section: Development Level: Medium Question: When you add a column to an existing SQL Server table, the column is added to the end of the table. The column will end up with the highest column_id. If a developer asks you how a column can be added to the middle of a table instead, what is your advice and how would you approach the request?

2021-04-21

SQL Interview: 10 System-defined default names

This is a post in the SQL Interview series. These aren’t trick or gotcha questions, they’re just questions designed to scope out a candidate’s knowledge around SQL Server and Azure SQL Database. Section: Development Level: Medium Question: When you define a column default with code like below: USE tempdb; GO DROP TABLE IF EXISTS dbo.Customers; GO CREATE TABLE dbo.Customers ( CustomerID int IDENTITY(1,1) CONSTRAINT PK_dbo_Customers PRIMARY KEY, TradingName nvarchar(100) NOT NULL, CreatedDate datetime2(3) NOT NULL DEFAULT (SYSDATETIME()) ); GO the system will define the name of the default.

2021-04-15

SQL Interview: 9: Computed columns in table definitions

This is a post in the SQL Interview series. These aren’t trick or gotcha questions, they’re just questions designed to scope out a candidate’s knowledge around SQL Server and Azure SQL Database. Section: Development Level: Medium Question: Consider the following code: USE tempdb; GO DROP TABLE IF EXISTS dbo.Customers; GO CREATE TABLE dbo.Customers ( CustomerID int IDENTITY(1,1) CONSTRAINT PK_dbo_Customers PRIMARY KEY, TradingName nvarchar(100) NOT NULL, CreatedDate AS SYSDATETIME() ); GO INSERT dbo.

2021-04-13

SQL Interview: 8: Why should you avoid the use of db_datareader and db_datawriter?

This is a post in the SQL Interview series. These aren’t trick or gotcha questions, they’re just questions designed to scope out a candidate’s knowledge around SQL Server and Azure SQL Database. Section: Security Level: Intro Question: Many applications connect to SQL Server databases with users that are members of the db_datareader and/or db_datawriter roles? Why should you avoid using those roles? Answer: db_datareader and db_datawriter are fixed database roles that were provided for convenience.

2021-04-09

SQL Interview 7: Are statement terminators ever required in T-SQL?

This is a post in the SQL Interview series. These aren’t trick or gotcha questions, they’re just questions designed to scope out a candidate’s knowledge around SQL Server and Azure SQL Database. Section: Development Level: Intro Question: Many versions of SQL require every SQL statement to be terminated with a semicolon. Since it was created, T-SQL has listed statement terminators as optional. Are there any situations where they are required, and not optional?

2021-04-08