Select Category 
 

MS SQL Interview Questions Answers

MS SQL Interview Question - 61 : -

If I created a column with data type VARCHAR(3), what would I expect to see in MySQL table?

MS SQL Interview Answer - 61 : -

CHAR(3), since MySQL automatically adjusted the data type.
 

MS SQL Interview Question - 62 : -

How do you convert a string to UTF-8?

MS SQL Interview Answer - 62 : -

SELECT (techpreparation_question USING utf8);
 

MS SQL Interview Question - 63 : -

How do I retrieve only the date or time portion of the data?

MS SQL Interview Answer - 63 : -

You can use T-SQL's DATEPART() function to return a subset of the values that SQL Server's datetime columns store. The DATEPART() function uses two arguments. The first argument specifies the portion of the date that you want, and the second value specifies the datetime column:

SELECT orderID, DATEPART(MM,OrderDate) AS OrderMonth FROM Orders

 

MS SQL Interview Question - 64 : -

How do I retrieve rows based on datetime values?

MS SQL Interview Answer - 64 : -

SQL Server recognizes date and time data enclosed in single quotes. You can couple date and time values together or use them independently. You can also combine character date formats ('May 15, 2004 4 am'), numeric date formats ('5/15/2004 04:30'), or contiguous string formats ('20040515') with standard <, >, or = operators, as the following example shows:

SELECT * FROM orders WHERE OrderDate < 'May 15, 2004'4. How do I retrieve only the date or time portion of the data?

 

MS SQL Interview Question - 65 : -

Speed of SELECT Queries ?

MS SQL Interview Answer - 65 : -

In general, when you want to make a slow SELECT ... WHERE faster, the first thing to check is whether or not you can add an index.

All references between different tables should usually be done with indexes.
You can use the EXPLAIN command to determine which indexes are used for a SELECT.

Some general tips:

To help MySQL optimize queries better, run myisamchk --analyze on a table after it has been loaded with relevant data. This updates a value for each index part that indicates the average number of rows that have the same value. (For unique indexes, this is always 1, of course.). MySQL will use this to decide which index to choose when you connect two tables with 'a non-constant expression'. You can check the result from the analyze run by doing SHOW INDEX FROM table_name and examining the Cardinality column.
To sort an index and data according to an index, use myisamchk --sort-index --sort-records=1 (if you want to sort on index 1). If you have a unique index from which you want to read all records in order according to that index, this is a good way to make that faster. Note, however, that this sorting isn't written optimally and will take a long time for a large table!

 

MS SQL Interview Question - 66 : -

What can be used to ensure that a field in a table only accepts a certain range of values?

MS SQL Interview Answer - 66 : -

This question can be answered a couple of different ways, but only one answer is a "good" one. The answer you want to hear is a Check constraint, which is defined on a database table that limits the values entered into that column. These constraints are relatively easy to create, and they are the recommended type for enforcing domain integrity in SQL Server.

Triggers can also be used to restrict the values accepted in a field in a database table, but this solution requires the trigger to be defined on the table, which can hinder performance in certain situations. For this reason, Microsoft recommends Check constraints over all other methods for restricting domain integrity.