SQL Interview Questions For Software Testers

Software testing - Questions and Answers - SQL Interview Questions

1. Q. What does SQL stand for?  
   A. Structured Query Language

   Q. Who was E. F. Codd?
   A. He was the original inventor of the relational model.

2. Q. How do you select all records from the table? 
   A. Select * from table_name;

   Q. What do you understand by the term referential integrity?	

3. Q. What is a join?
   A. Join is a process of retrieve pieces of data from different sets (tables) and returns them to the user or program as one “joined” collection of data.

4. Q. What kinds of joins do you know? Give examples.
   A. We have self join, outer joint (LEFT, RIGHT), , cross-join ( Cartesian product n*m rows returned)
outer joint
SELECT Employee.Name, Department. DeptName 
FROM Employee, Department
WHERE Employee.Employee_ID = Department.Employee_ID;

SELECT * FROM table1, table2;

self join
SELECT e1.name | |’    ‘ | | e2.ename FROM emp e1, emp e2 WHERE e1. emp_no = e2.emp_no;

The following summarizes the result of the join operations:
  • The result of T1 INNER JOIN T2 consists of their paired rows where the join-condition is true.
  • The result of T1 LEFT OUTER JOIN T2 consists of their paired rows where the join-condition is true and, for each unpaired row of T1, the concatenation of that row with the null row of T2. All columns derived from T2 allow null values.
  • The result of T1 RIGHT OUTER JOIN T2 consists of their paired rows where the join-condition is true and, for each unpaired row of T2, the concatenation of that row with the null row of T1. All columns derived from T1 allow null values.
  • The result of T1 FULL OUTER JOIN T2 consists of their paired rows and, for each unpaired row of T2, the concatenation of that row with the null row of T1 and, for each unpaired row of T1, the concatenation of that row with the null row of T2. All columns derived from T1 and T2 allow null values. 5. Q. How do you add record to a table? A. INSERT into table_name VALUES (‘ALEX’ , 33 , ‘M’); 6. Q. How do you add a column to a table? A. ALTER TABLE Department ADD (AGE, NUMBER); 7. Q. How do you change value of the field? A. UPDATE EMP_table set number = 200 where item_munber = ‘CD’; update name_table set status = 'enable' where phone = '4161112222'; update SERVICE_table set REQUEST_DATE = to_date ('2006-03-04 09:29', 'yyyy-mm-dd hh24:MI') where phone = '4161112222'; 8. Q. What does COMMIT do? A. Saving all changes made by DML statements 9. Q. What is a primary key? A. The column (columns) that has completely unique data throughout the table is known as the primary key field. 10. Q. What are foreign keys? A. Foreign key field – is a field that links one table to another table’s primary or foreign key. 11. Q. What is the main role of a primary key in a table? A. The main role of a primary key in a data table is to maintain the internal integrity of a data table. 12. Q. Can a table have more than one foreign key defined? A. A table can have any number of foreign keys defined. It can have only one primary key defined. 13. Q. List all the possible values that can be stored in a BOOLEAN data field. A. There are only two values that can be stored in a BOOLEAN data field: -1(true) and 0(false). 14 Q. What is the highest value that can be stored in a BYTE data field? A. The highest value that can be stored in a BYTE field is 255. or from -128 to 127. Byte is a set of Bits that represent a single character. Usually there are 8 Bits in a Byte, sometimes more, depending on how the measurement is being made. Each Char requires one byte of memory and can have a value from 0 to 255 (or 0 to 11111111 in binary). 15. Q. How many places to the right of the decimal can be stored in a CURRENCY data field? A. The CURRENCY data type can store up to four places to the right of the decimal. Any data beyond the fourth place will be truncated by Visual Basic without reporting an error. 16. Q. What is a stored procedure? A. A procedure is a group of PL/SQL statements that can be called by a name. Procedures do not return values they perform tasks. 17. Q. Describe how NULLs work in SQL? A. The NULL is how SQL handles missing values. Arifthmetic operation with NULL in SQL will return a NULL. 18. Q. What is Normalization? A. The process of table design is called normalization. 19. Q. What is referential integrity constraints? A. Referential integrity constraints are rules that are partnof the table in a database schema. 20. Q. What is Trigger? A. Trigger will execute a block of procedural code against the database when a table event occurs. A2. A trigger defines a set of actions that are performed in response to an insert, update, or delete operation on a specified table. When such an SQL operation is executed, in this case the trigger has been activated. 21. Q. Which of the following WHERE clauses will return only rows that have a NULL in the PerDiemExpenses column? A. WHERE PerDiemExpenses <> B. WHERE PerDiemExpenses IS NULL C. WHERE PerDiemExpenses = NULL D. WHERE PerDiemExpenses NOT IN (*) A. B is correct � When searching for a NULL value in a column, you must use the keyword IS. No quotes are required around the keyword NULL. 22. Q. You issue the following query:SELECT FirstName FROM StaffListWHERE FirstName LIKE'_A%'Which names would be returned by this query? Choose all that apply. A. Allen B. CLARK C. JACKSON D. David A. C is correct � Two wildcards are used with the LIKE operator. The underscore (_) stands for any one character of any case, and the percent sign (%) stands for any number of characters of any case including none. Because this string starts with an underscore rather than a percent sign, it won't return Allen or Clark because they represent zero and two characters before the "A". If the LIKE string had been "%A%", both of these values would have been returned. David was not returned because all non-wild card characters are case sensitive. Therefore, only strings with an uppercase "A" as their second letter are returned 23. Q. Write a SQL SELECT query that only returns each city only once from Students table? Do you need to order this list with an ORDER BY clause? A. SELECT DISTINCT City FROM Students; The Distinct keyword automatically sorts all data in ascending order. However, if you want the data sorted in descending order, you have to use an ORDER BY clause 24. Q. Write a SQL SELECT sample of the concatenation operator. A. SELECT LastName ||',' || FirstName, City FROM Students; 25. Q. How to rename column in the SQL SELECT query? A. SELECT LastName ||',' || FirstName AS "Student Name", City AS "Home City" "FROM StudentsORDER BY "Student Name"

    26. Q. Write SQL SELECT example how you limiting the rows returned with a WHERE clause. A. SELECT InstructorID, Salary FROM Instructors WHERE Salary > 5400 AND Salary < 6600; 27. Q. Write SQL SELECT query that returns the first and last name of each instructor, the Salary, and gives each of them a number. A. SELECT FirstName, LastName, Salary, ROWNUM FROM Instructors; 28. Q. Which of the following functions can be used only with numeric values? (Choose all that apply.) A. AVG B. MIN C. LENGTH D. SUM E. ROUND A. A and D � Only A and D are correct. The MIN function works with any character, numeric, or date datatype. The LENGTH function is a character function that returns the number of letters in a character value. The ROUND function works with both numeric and date values. 29. Q. Which function do you use to remove all padded characters to the right of a character value in a column with a char datatype? A. RTRIM B. RPAD C. TRIM A. C � The TRIM function is used to remove padded spaces. LTRIM and RTRIM functions were included in earlier versions of Oracle, but Oracle 8i has replaced them with a single TRIM function 30. Q. Which statement do you use to eliminate padded spaces between the month and day values in a function TO_CHAR(SYSDATE,'Month, DD, YYYY') ? A. To remove padded spaces, you use the "fm" prefix before the date element that contains the spaces. TO_CHAR(SYSDATE,'fmMonth DD, YYYY') 31. Q. Is the WHERE clause must appear always before the GROUP BY clause in SQL SELECT ? A. Yes. The proper order for SQL SELECT clauses is: SELECT, FROM, WHERE, GROUP BY, HAVING, ORDER BY. Only the SELECT and FROM clause are mandatory. 32. Q. How Oracle executes a statement with nested subqueries? A. When Oracle executes a statement with nested subqueries, it always executes the innermost query first. This query passes its results to the next query and so on until it reaches the outermost query. It is the outermost query that returns a result set. 33. Q. Which operator do you use to return all of the rows from one query except rows are returned in a second query? A. You use the MINUS operator to return all rows from one query except where duplicate rows are found in a second query. The UNION operator returns all rows from both queries minus duplicates. The UNION ALL operator returns all rows from both queries including duplicates. The INTERSECT operator returns only those rows that exist in both queries. 34. Q. How you will create a column alias? (Oracle 8i) A. The AS keyword is optional when specifying a column alias. You must enclose the column alias in double quotes when the alias contains a space or lowercase letters. If you specify an alias in l owercase letters without double quotes, the alias will appear in uppercase. 35 Q. Which of the following statements are Data Manipulation Language commands? A. INSERT B. UPDATE C. GRANT D. TRUNCATE E. CREATE A. A and B � The INSERT and UPDATE statements are Data Manipulation Language (DML) commands. GRANT is a Data Control Language (DCL) command. TRUNCATE and CREATE are Data Definition Language (DDL) commands 36. Question. What is Oracle locking? A. Oracle uses locking mechanisms to protect data from being destroyed by concurrent transactions. 37. Question. What Oracle lock modes do you know? A. Oracle has two lock modes: shared or exclusive. Shared locks are set on database resources so that many transactions can access the resource. Exclusive locks are set on resources that ensure one transaction has exclusive access to the database resource 38. Question. What is query optimization? A. Query optimization is the part of the query process in which the database system compares different query strategies and chooses the one with the least expected cost 39. Question. What are the main components of Database management systems software. A. The database management system software includes components for storage management, concurrency control, transaction processing, database manipulation interface, database definition interface, and database control interface. 40. Question. What are the main attributes of database management system? A. A database management system is composed of five elements: computer hardware, software, data, people (users), and operations procedures. 41. Question. What is transaction? A. A transaction is a collection of applications code and database manipulation code bound into an indivisible unit of execution. it consists from: BEGIN-TRANSACTION Name Code END TRANSACTION Name 42. Question. What databases do you know? Informix DB2 SQL Oracle 43. Question. Explain SQL SELECT example: select j.FILE_NUM from DB_name.job j, DB_name.address a where j.JOB_TYPE ='C' AND j.COMPANY_NAME = 'TEST6' AND j.OFFICE_ID = '101' AND j.ACTIVE_IND = 'Y' AND a.ADDRESS_STATUS_ID = 'H' AND a.OFFICE_ID = '101' AND a.FILE_NUM = j.FILE_NUM order by j.FILE_NUM; Answer: j and a aliases for table names. this is outer joint select statament from two tables. 44. Q. Describe some Conversion Functions that you know A. TO_CHAR converts a number / date to a string. TO_DATE converts a string (representing a date) to a date. TO_NUMBER converts a character string containing digits to a numeric data type, it accepts one parameter which is a column value or a string literal 45. Q. Describe some Group Functions that you know A. 1) The COUNT function tells you how many rows were in the result set. SELECT COUNT(*) FROM TESTING.QA 2) The AVG function tells you the average value of a numeric column. SELECT MAX(SALARY) FROM TESTING.QA 3) The MAX and MIN functions tell you the maximum and minimum value of a numeric column. SELECT MIN(SALARY) FROM TESTING.QA 4) The SUM function tells you the sum value of a numeric column. SELECT SUM(SALARY) FROM TESTING.QA 46. Question. What does DML stand for? A. DML is Data Manipulation Language statements. (SELECT) 47. Question. What does DDL stand for? A. DDL is Data Definition Language statements. (CREATE) 48. Question. What does DCL stand for? A. DCL is Data Control Language statements. (COMMIT) 49. Question: Describe SQL comments. A. SQL comments are introduced by two consecutive hyphens (--) and ended by the end of the line. 50. Q. In what sequence SQL statement are processed? A. The clauses of the subselect are processed in the following sequence (DB2): 1. FROM clause 2. WHERE clause 3. GROUP BY clause 4. HAVING clause 5. SELECT clause 6. ORDER BY clause 7. FETCH FIRST clause 51. Q. Describe TO_DATE function. A. The TO_DATE function returns a timestamp from a character string that has been interpreted using a character template. TO_DATE is a synonym for TIMESTAMP_FORMAT. 52. Question: In the domain table we have status as a numeric value from 01 to 04 and we have text definition of these values in the design document. Write SQL query to see the result as a text definitions that is corresponded to these values. (DB2) A. select TB1.member_id, TB1.bu_id, TB1.program, TB2.num, case TB1.status when '01' then 'Auto renew' when '02' then 'Expired' when '03' then 'Sold' when '04' then Terminated else TB_name.status end from DB_name.TB_name1 TB1, DB_name.TB_name2 TB2 where TB1.program in ('com', 'org') and TB1.member_role = '100' order by TB1.member_id fetch first 30 rows only 53. Question: What's the logical difference, if any, between the following SQL expressions? SELECT COUNT ( * ) FROM T SELECT SUM ( 1 ) FROM T A. They're the same unless table T is empty, in which case the first yields a one-column, one-row table containing a zero and the second yields a one-column, one-row table "containing a null." 54. Question: we have a table Address ( street CHAR(20) NOT NULL, apartment CHAR(8), city CHAR(30) NOT NULL, ); write a SQL statement that returns no apartment addresses only. Answer: SELECT * FROM Address WHERE apartment IS NULL;

  • On this page I put some SQL interview questions. These SQL interview questions are very simple and mainly were used for interviewing software testers who is involved in database SQL testing or grey box testing. The interview questions found above are listed in order of complexity. However all new interview questions (regardless of there difficulty) will be added to the bottom of the list. You can find more SQL interview questions searching the WEB.

    END Basic SQL interview questions.
    Find more on sql fundamentals

    Interview Questions QA Main Page
    © January 2006 Alex Samurin geocities.com/xtremetesting/ © eXtremeSoftwareTesting.com