Complete MySQL MCQ Quiz – 150 Questions
Complete MySQL MCQ Quiz – 150 Questions Hindi Instructions
Complete MySQL MCQ Quiz – 150 Questions
Case study tables ([Case study] वाले सवालों के लिए)
customers (id INT PRIMARY KEY, name, city)
| id | name | city |
|---|---|---|
| 1 | Asha | Delhi |
| 2 | Ravi | Pune |
| 3 | Meena | Delhi |
| 4 | John | Jaipur |
orders (id INT PRIMARY KEY, customer_id INT REFERENCES customers(id), amount INT, order_date DATE)
| id | customer_id | amount | order_date |
|---|---|---|---|
| 101 | 1 | 500 | 2026-01-05 |
| 102 | 1 | 1200 | 2026-01-20 |
| 103 | 2 | 300 | 2026-02-02 |
| 104 | 3 | 1500 | 2026-02-10 |
| 105 | 3 | 700 | 2026-03-01 |
हर case-study उत्तर असली MySQL-compatible server पर query चलाकर जाँचा गया है।
Question Palette
Green = answered, Purple = review, White = not answered.
उत्तर कुंजी और व्याख्या
पहले test पूरा करें और submit करें, फिर अपने उत्तर यहाँ मिलाएँ। हर उत्तर के साथ छोटा explanation है ताकि ग़लती का कारण समझ आए।
सभी 150 उत्तर दिखाएँ
- What is a DBMS?
उत्तर: B. Software to create, store, manage and query databases – A Database Management System (MySQL, Oracle, PostgreSQL) lets users define, store, retrieve and protect data.
- Which is an advantage of a DBMS over a file system?
उत्तर: C. Reduced data redundancy and better consistency – A DBMS stores shared data once and enforces constraints, so copies do not go out of sync.
- In RDBMS, data is stored in the form of:
उत्तर: A. Tables (relations) – A relational database organises data into tables made of rows and columns.
- A row in a table is also called a:
उत्तर: C. Tuple – Row = tuple = record. Column = attribute = field.
- A column in a table is also called an:
उत्तर: D. Attribute – Each column describes one property (attribute) of the entity.
- The number of rows in a relation is called its:
उत्तर: D. Cardinality – Cardinality counts rows (tuples); degree counts columns (attributes).
- The number of columns in a relation is called its:
उत्तर: B. Degree – A table with columns RollNo, Name, Marks has degree 3.
- The set of allowed values for an attribute is called its:
उत्तर: D. Domain – Example: the domain of Gender could be {'M','F','O'}; the domain of Marks could be 0–100.
- Which key uniquely identifies each row and cannot be NULL?
उत्तर: D. Primary key – A primary key must be unique and NOT NULL; a table has only one primary key.
- All attributes or attribute sets that can uniquely identify a row are:
उत्तर: B. Candidate keys – From the candidate keys, one is chosen as primary key; the rest become alternate keys.
- A candidate key that is NOT chosen as primary key is called:
उत्तर: B. Alternate key – If RollNo is the primary key, AadhaarNo (also unique) is an alternate key.
- A column in one table that refers to the primary key of another table is a:
उत्तर: A. Foreign key – Foreign keys link tables, e.g. Marks.RollNo references Students.RollNo.
- A primary key made of two or more columns is called a:
उत्तर: B. Composite key – Example: (RollNo, Subject) together identify a row in a Marks table.
- A super key is:
उत्तर: A. Any set of attributes that uniquely identifies a row – Every candidate key is a minimal super key; adding extra columns to a key still gives a super key.
- Referential integrity ensures that:
उत्तर: D. A foreign key value matches an existing primary key value or is NULL – You cannot insert marks for a student RollNo that does not exist in Students.
- Which of these is NOT a DBMS model?
उत्तर: A. Spreadsheet model – Classic data models: hierarchical, network, relational, and object-oriented.
- The overall logical design of a database is called the:
उत्तर: D. Schema – Schema is the structure; instance is the data stored at a particular moment.
- The data stored in a database at a particular moment is called:
उत्तर: B. Instance – The instance changes with every insert/update/delete; the schema changes rarely.
- Data about data (table names, column types) is called:
उत्तर: A. Metadata – The data dictionary/information_schema stores metadata.
- Which level of data abstraction describes how data is physically stored?
उत्तर: B. Physical (internal) level – Three levels: physical, logical/conceptual, and view/external.
- Physical data independence means:
उत्तर: C. Changing storage structure without changing the logical schema – E.g. adding an index or moving files does not require changing application queries.
- In an ER diagram, an entity is shown by a:
उत्तर: B. Rectangle – Rectangle = entity, ellipse = attribute, diamond = relationship.
- In an ER diagram, a relationship is shown by a:
उत्तर: A. Diamond – Example: Student —<Enrolls>— Course.
- A Student can enrol in many Courses and a Course has many Students. The relationship is:
उत्तर: D. Many-to-many – M:N relationships are implemented with a separate linking table such as Enrollment(RollNo, CourseID).
- An attribute that can be calculated from other attributes (e.g. Age from DOB) is:
उत्तर: A. Derived attribute – Derived attributes are usually not stored; they are computed when needed.
- An attribute that can have several values for one entity (e.g. phone numbers) is:
उत्तर: B. Multivalued attribute – In a relational design, multivalued attributes are moved to a separate table.
- First Normal Form (1NF) requires that:
उत्तर: C. Every column holds atomic (single) values – A column like Subjects = 'Maths, Science' violates 1NF.
- A table is in 2NF if it is in 1NF and:
उत्तर: B. No non-key attribute depends on only part of a composite key – 2NF removes partial dependencies, which only arise with composite keys.
- 3NF removes which type of dependency?
उत्तर: B. Transitive dependency – If RollNo → PinCode and PinCode → City, then City depends transitively on RollNo; move it to a PinCode table.
- BCNF is a stricter form of:
उत्तर: D. 3NF – In BCNF, every determinant must be a candidate key.
- The main purpose of normalisation is to:
उत्तर: A. Reduce redundancy and update anomalies – Normalised tables avoid insert, update and delete anomalies.
- Deleting the last student of a course also deletes the course details. This is a:
उत्तर: A. Delete anomaly – It happens when unrelated facts are stored in the same table.
- Which property of a transaction means 'all or nothing'?
उत्तर: D. Atomicity – ACID: Atomicity, Consistency, Isolation, Durability.
- Which ACID property ensures committed data survives a power failure?
उत्तर: B. Durability – InnoDB writes a redo log so committed transactions are not lost.
- Which ACID property keeps concurrent transactions from seeing each other's uncommitted changes?
उत्तर: B. Isolation – Isolation levels (READ COMMITTED, REPEATABLE READ…) control this.
- Which of the following is an open-source RDBMS?
उत्तर: A. MySQL – MySQL (and MariaDB, PostgreSQL) are open-source relational database systems.
- The default storage engine in MySQL 8 is:
उत्तर: B. InnoDB – InnoDB supports transactions, row-level locking and foreign keys.
- Which storage engine does NOT support transactions?
उत्तर: B. MyISAM – MyISAM uses table-level locking and has no COMMIT/ROLLBACK.
- SQL stands for:
उत्तर: B. Structured Query Language – SQL is the standard language for relational databases.
- Which category of SQL commands defines structure (CREATE, ALTER, DROP)?
उत्तर: C. DDL – DDL = Data Definition Language.
- Which category includes INSERT, UPDATE and DELETE?
उत्तर: D. DML – DML = Data Manipulation Language.
- GRANT and REVOKE belong to:
उत्तर: D. DCL – DCL = Data Control Language, used for permissions.
- COMMIT, ROLLBACK and SAVEPOINT belong to:
उत्तर: D. TCL – TCL = Transaction Control Language.
- Which constraint prevents NULL values in a column?
उत्तर: C. NOT NULL – NOT NULL forces a value to be supplied for that column.
- Which constraint allows only distinct values but (in MySQL) permits multiple NULLs?
उत्तर: B. UNIQUE – Unlike PRIMARY KEY, a UNIQUE column can contain NULLs.
- A CHECK constraint is used to:
उत्तर: C. Allow only values that satisfy a condition – Example: CHECK (Marks BETWEEN 0 AND 100). MySQL enforces CHECK from version 8.0.16.
- A view in SQL is:
उत्तर: A. A virtual table based on a SELECT query – Views store the query, not the data; they simplify complex queries and hide columns.
- An index is mainly used to:
उत्तर: A. Speed up searching and sorting – Indexes make SELECT faster but add a small cost to INSERT/UPDATE.
- Which person is responsible for managing users, backups and performance of a database?
उत्तर: B. Database Administrator (DBA) – The DBA controls access, backups, tuning and recovery.
- Two tables are joined using a common column. In a good design this column is usually:
उत्तर: D. A primary key in one table and a foreign key in the other – PK–FK pairs define the relationship and keep data consistent.
- Which command creates a new database named school?
उत्तर: D. CREATE DATABASE school; – CREATE DATABASE creates it; USE school; selects it.
- Which command selects a database for use?
उत्तर: C. USE school; – After USE, all table names refer to that database.
- Which command shows all tables of the current database?
उत्तर: B. SHOW TABLES; – SHOW DATABASES lists databases; SHOW TABLES lists tables.
- Which command shows the structure (columns and types) of a table?
उत्तर: D. DESCRIBE students; – DESC students; is the short form.
- Which data type is best for a name of up to 50 characters?
उत्तर: A. VARCHAR(50) – VARCHAR stores variable-length text up to the given length.
- Which data type stores exact money values like 1250.75?
उत्तर: A. DECIMAL(10,2) – DECIMAL avoids floating-point rounding errors in money calculations.
- The default date format in MySQL is:
उत्तर: C. YYYY-MM-DD – Example: '2026-03-15'.
- Which statement adds a new row to a table?
उत्तर: A. INSERT INTO students VALUES (1, 'Asha', 88); – INSERT INTO table [(columns)] VALUES (...).
- Which statement changes Asha's marks to 92?
उत्तर: B. UPDATE students SET marks = 92 WHERE name = 'Asha'; – Always use WHERE with UPDATE, otherwise every row changes.
- What happens if you run UPDATE students SET marks = 0; without WHERE?
उत्तर: C. Marks of every student become 0 – UPDATE without WHERE affects all rows – a common costly mistake. MySQL Workbench's safe-update mode blocks it.
- Which statement deletes all students of class 9 but keeps the table?
उत्तर: D. DELETE FROM students WHERE class = 9; – DELETE removes rows; DROP removes the whole table; TRUNCATE has no WHERE.
- Difference between DELETE (without WHERE) and TRUNCATE:
उत्तर: C. TRUNCATE is DDL, faster and resets AUTO_INCREMENT – Both empty the table, but TRUNCATE recreates it and cannot be filtered.
- Which command removes a table and its structure permanently?
उत्तर: A. DROP TABLE students; – After DROP, the table no longer exists.
- Which command adds a column email to students?
उत्तर: A. ALTER TABLE students ADD email VARCHAR(80); – ALTER TABLE … ADD / MODIFY / DROP / RENAME COLUMN changes structure.
- Which command changes the data type of column marks to DECIMAL(5,2)?
उत्तर: B. ALTER TABLE students MODIFY marks DECIMAL(5,2); – MODIFY changes the definition; CHANGE can also rename the column.
- Which query shows only the name and marks columns?
उत्तर: A. SELECT name, marks FROM students; – List the columns after SELECT, separated by commas.
- Which keyword removes duplicate values from the result?
उत्तर: A. DISTINCT – SELECT DISTINCT city FROM students; lists each city once.
- Which clause sorts the result by marks, highest first?
उत्तर: A. ORDER BY marks DESC – ASC is the default; DESC gives descending order.
- Which condition finds names starting with 'A'?
उत्तर: A. name LIKE 'A%' – % matches any number of characters; _ matches exactly one.
- Which condition finds names whose second letter is 'a'?
उत्तर: B. name LIKE '_a%' – The _ stands for exactly one character before 'a'.
- Which query finds students with marks from 60 to 80 inclusive?
उत्तर: B. WHERE marks BETWEEN 60 AND 80 – BETWEEN includes both end values.
- Which condition selects students from Delhi, Pune or Jaipur?
उत्तर: A. city IN ('Delhi', 'Pune', 'Jaipur') – IN is a short form of several OR conditions.
- How do you find rows where phone is missing?
उत्तर: A. WHERE phone IS NULL – NULL is not equal to anything, even NULL; always use IS NULL / IS NOT NULL.
- What does SELECT COUNT(*) FROM students; return?
उत्तर: B. The number of rows in students – COUNT(*) counts rows including those with NULLs.
- COUNT(phone) counts:
उत्तर: A. Rows where phone is not NULL – Aggregate functions on a column ignore NULLs.
- Which function returns the average marks?
उत्तर: D. AVG(marks) – Other aggregates: SUM, MIN, MAX, COUNT.
- Which clause groups rows to show average marks per class?
उत्तर: B. GROUP BY class – SELECT class, AVG(marks) FROM students GROUP BY class;
- To show only classes whose average marks are above 75, use:
उत्तर: D. HAVING AVG(marks) > 75 – WHERE filters rows before grouping; HAVING filters groups after aggregation.
- Correct order of clauses in a SELECT statement:
उत्तर: B. SELECT – FROM – WHERE – GROUP BY – HAVING – ORDER BY – LIMIT – Writing them in this order avoids syntax errors.
- Which query returns the top 3 scorers?
उत्तर: D. SELECT * FROM students ORDER BY marks DESC LIMIT 3; – MySQL uses LIMIT; SQL Server uses TOP.
- What does SELECT ROUND(78.456, 1); return?
उत्तर: C. 78.5 – ROUND(x, d) rounds to d decimal places.
- What does SELECT UPPER('sql'); return?
उत्तर: D. SQL – UPPER/UCASE converts to capitals; LOWER/LCASE to small letters.
- What does SELECT LENGTH('India'); return?
उत्तर: D. 5 – LENGTH returns bytes; for plain English letters that equals the number of characters. Use CHAR_LENGTH for Hindi text.
- What does SELECT SUBSTR('Database', 1, 4); return?
उत्तर: C. Data – SUBSTR(string, start, length); positions start at 1.
- What does SELECT CONCAT('Coding', 'Easily'); return?
उत्तर: D. CodingEasily – CONCAT joins strings without adding spaces.
- What does SELECT MOD(17, 5); return?
उत्तर: D. 2 – MOD returns the remainder: 17 = 5×3 + 2.
- Which function returns today's date?
उत्तर: B. CURDATE() – NOW() returns date and time; CURDATE() returns only the date.
- What does SELECT YEAR('2026-08-15'); return?
उत्तर: B. 2026 – MONTH() and DAY() extract the other parts.
- What does SELECT POWER(2, 5); return?
उत्तर: D. 32 – POWER(x, y) = x raised to y.
- Which gives an alias to a column in the result?
उत्तर: C. SELECT marks AS score FROM students; – AS renames a column or table only in that query's output.
- Which command gives user 'ravi' permission to read the school database?
उत्तर: D. GRANT SELECT ON school.* TO 'ravi'@'localhost'; – REVOKE … FROM removes the permission.
- After START TRANSACTION, which command undoes uncommitted changes?
उत्तर: A. ROLLBACK; – ROLLBACK cancels all changes since the transaction started (or since a SAVEPOINT).
- Which statement inserts several rows at once?
उत्तर: D. INSERT INTO t (a,b) VALUES (1,2), (3,4), (5,6); – Separate each row's values with commas – faster than many single inserts.
- Which constraint automatically gives the next number to a new row's id?
उत्तर: D. AUTO_INCREMENT – Usually: id INT AUTO_INCREMENT PRIMARY KEY.
- Which clause in CREATE TABLE sets a value when none is given?
उत्तर: B. DEFAULT – Example: city VARCHAR(30) DEFAULT 'Delhi'.
- Which command renames table students to learners?
उत्तर: D. RENAME TABLE students TO learners; – ALTER TABLE students RENAME TO learners; also works.
- Which query counts students in each city?
उत्तर: D. SELECT city, COUNT(*) FROM students GROUP BY city; – GROUP BY makes one row per city; COUNT(*) counts rows in each group.
- What is the result of NULL + 10 in SQL?
उत्तर: A. NULL – Any arithmetic with NULL gives NULL; use IFNULL(col, 0) or COALESCE to replace it.
- Which function replaces NULL marks with 0 in the output?
उत्तर: A. IFNULL(marks, 0) – COALESCE(marks, 0) is the standard SQL equivalent.
- Which statement saves all changes of the current transaction permanently?
उत्तर: A. COMMIT; – With autocommit ON, each statement is committed automatically.
- Which join returns only rows that have matching values in both tables?
उत्तर: B. INNER JOIN – Rows without a match in either table are dropped.
- Which join returns all rows of the left table and matching rows of the right table?
उत्तर: A. LEFT JOIN – Unmatched right-side columns appear as NULL.
- A CROSS JOIN of a 4-row table with a 5-row table returns:
उत्तर: D. 20 rows – A cross join is the Cartesian product: 4 × 5.
- Joining a table with itself (e.g. employee and manager in one table) is called:
उत्तर: B. Self join – Use aliases: FROM emp e JOIN emp m ON e.manager_id = m.id.
- MySQL does not support FULL OUTER JOIN directly. It can be produced with:
उत्तर: A. LEFT JOIN UNION RIGHT JOIN – UNION removes duplicates of the matched rows.
- UNION and UNION ALL differ because:
उत्तर: B. UNION removes duplicate rows, UNION ALL keeps them – UNION ALL is faster when duplicates are acceptable.
- A subquery is:
उत्तर: B. A query written inside another query – Example: SELECT name FROM students WHERE marks > (SELECT AVG(marks) FROM students);
- A correlated subquery:
उत्तर: B. Refers to a column of the outer query and runs once per outer row – Example: find students scoring above their own class average.
- Which operator checks whether a subquery returns any row?
उत्तर: D. EXISTS – WHERE EXISTS (SELECT 1 FROM orders o WHERE o.cust_id = c.id).
- marks > ALL (SELECT marks FROM students WHERE class = 9) means:
उत्तर: C. Greater than the highest class-9 mark – > ANY means greater than at least one value (i.e. the minimum).
- Which window function gives 1, 2, 2, 4 for marks 95, 90, 90, 85?
उत्तर: A. RANK() – RANK leaves gaps after ties; DENSE_RANK would give 1, 2, 2, 3.
- Which window function gives 1, 2, 2, 3 for marks 95, 90, 90, 85?
उत्तर: A. DENSE_RANK() – DENSE_RANK does not skip numbers after ties (MySQL 8+).
- SUM(amount) OVER (ORDER BY order_date) calculates:
उत्तर: B. A running total – Window functions keep every row while adding an aggregate.
- A CTE (Common Table Expression) starts with the keyword:
उत्तर: D. WITH – WITH toppers AS (SELECT …) SELECT * FROM toppers; (MySQL 8+).
- Which statement shows how MySQL will execute a query (index usage etc.)?
उत्तर: A. EXPLAIN SELECT … – EXPLAIN shows the access type, keys used and rows estimated.
- An index on (last_name, first_name) helps most for:
उत्तर: A. WHERE last_name = 'Sharma' AND first_name = 'Ravi' – Composite indexes are used from the leftmost column (leftmost-prefix rule).
- A stored procedure is called using:
उत्तर: A. CALL proc_name(); – Procedures can take IN, OUT and INOUT parameters.
- Why is DELIMITER $$ used before CREATE PROCEDURE in the MySQL client?
उत्तर: B. So the semicolons inside the body do not end the statement early – Reset with DELIMITER ; afterwards.
- A trigger runs:
उत्तर: B. Automatically before or after INSERT, UPDATE or DELETE on a table – Example: a BEFORE INSERT trigger that converts names to upper case.
- Inside an UPDATE trigger, the new value of a column is accessed as:
उत्तर: B. NEW.column – OLD.column gives the value before the update.
- A SAVEPOINT allows you to:
उत्तर: A. Roll back part of a transaction – ROLLBACK TO sp1; undoes changes made after the savepoint.
- Which isolation level is the InnoDB default?
उत्तर: C. REPEATABLE READ – It prevents dirty and non-repeatable reads.
- Reading another transaction's uncommitted change is called a:
उत्तर: A. Dirty read – Allowed only at READ UNCOMMITTED.
- Two transactions each waiting for a lock held by the other is a:
उत्तर: D. Deadlock – InnoDB detects deadlocks and rolls back one transaction.
- Which tool creates a logical backup (SQL file) of a MySQL database?
उत्तर: C. mysqldump – mysqldump -u root -p school > school.sql; restore with mysql school < school.sql.
- Which clause prevents SQL injection in application code?
उत्तर: A. Prepared statements with parameters – Never build SQL by joining user input into the query string.
- CASE in SQL is used to:
उत्तर: D. Return values based on conditions inside a query – CASE WHEN marks >= 90 THEN 'A1' WHEN marks >= 80 THEN 'A2' ELSE 'B' END.
- ON DELETE CASCADE on a foreign key means:
उत्तर: A. Deleting a parent row automatically deletes its child rows – Use with care – one DELETE can remove many related rows.
- Which data type stores JSON documents with validation in MySQL 8?
उत्तर: B. JSON – Use ->> or JSON_EXTRACT to read values.
- GROUP_CONCAT(name) in a GROUP BY query returns:
उत्तर: D. All names of the group joined in one string – Default separator is a comma; SEPARATOR ' | ' changes it.
- [Case study] SELECT COUNT(*) FROM orders; returns:
उत्तर: D. 5 – The orders table has 5 rows (ids 101–105).
- [Case study] SELECT SUM(amount) FROM orders WHERE customer_id = 1; returns:
उत्तर: A. 1700 – Asha's orders: 500 + 1200 = 1700.
- [Case study] Which customer has no orders?
उत्तर: C. John – Customer 4 (John) has no row in orders; find him with LEFT JOIN … WHERE o.id IS NULL.
- [Case study] SELECT COUNT(*) FROM customers c JOIN orders o ON c.id = o.customer_id; returns:
उत्तर: A. 5 – Every order matches exactly one customer, so the inner join has 5 rows.
- [Case study] SELECT COUNT(*) FROM customers c LEFT JOIN orders o ON c.id = o.customer_id; returns:
उत्तर: A. 6 – 5 matched rows + 1 row for John with NULL order columns.
- [Case study] SELECT city, SUM(amount) … GROUP BY city — the total for Delhi is:
उत्तर: A. 3900 – Delhi customers Asha (1700) and Meena (2200): 1700 + 2200 = 3900.
- [Case study] Which customer has the highest total order amount?
उत्तर: D. Meena – Totals: Asha 1700, Ravi 300, Meena 2200.
- [Case study] SELECT MAX(amount) FROM orders WHERE order_date < '2026-02-01'; returns:
उत्तर: B. 1200 – January orders are 500 and 1200.
- [Case study] SELECT AVG(amount) FROM orders; returns:
उत्तर: A. 840.0000 – Total 4200 ÷ 5 orders = 840 (MySQL shows 840.0000).
- [Case study] How many customers have total orders above 1000 (… GROUP BY customer_id HAVING SUM(amount) > 1000)?
उत्तर: A. 2 – Asha (1700) and Meena (2200).
- [Case study] SELECT COUNT(DISTINCT customer_id) FROM orders; returns:
उत्तर: D. 3 – Customers 1, 2 and 3 placed orders.
- [Case study] SELECT MONTH(order_date) m, COUNT(*) FROM orders GROUP BY m — the count for month 2 is:
उत्तर: D. 2 – Orders 103 and 104 are in February.
- [Case study] Which query lists customers who placed at least one order?
उत्तर: D. SELECT name FROM customers WHERE id IN (SELECT customer_id FROM orders); – The subquery returns 1, 2, 3, 3, 1 → Asha, Ravi, Meena.
- [Case study] SELECT name FROM customers WHERE city = 'Delhi' ORDER BY name DESC LIMIT 1; returns:
उत्तर: A. Meena – Delhi names sorted Z–A: Meena, Asha.
- [Case study] For Asha, ROW_NUMBER() OVER (PARTITION BY customer_id ORDER BY order_date) gives order 102 the number:
उत्तर: A. 2 – Asha's orders by date: 101 (1st), 102 (2nd).
- [Case study] To stop deleting a customer who still has orders, the foreign key should use:
उत्तर: D. ON DELETE RESTRICT (the default) – RESTRICT/NO ACTION blocks the delete with error 1451.
- [Case study] Which index would most speed up WHERE customer_id = ? on orders?
उत्तर: D. An index on orders(customer_id) – InnoDB automatically creates this index when you define the foreign key.
- [Case study] SELECT c.name, o.amount FROM customers c JOIN orders o ON c.id = o.customer_id WHERE o.amount > (SELECT AVG(amount) FROM orders); returns how many rows?
उत्तर: A. 2 – Average is 840; orders above it: 1200 (Asha) and 1500 (Meena).
- [Case study] SELECT COALESCE(SUM(o.amount), 0) FROM customers c LEFT JOIN orders o ON c.id = o.customer_id WHERE c.name = 'John'; returns:
उत्तर: B. 0 – John has no orders, so SUM is NULL and COALESCE turns it into 0.
- [Case study] Which statement adds a 10% discount to orders above 1000?
उत्तर: A. UPDATE orders SET amount = amount * 0.9 WHERE amount > 1000; – UPDATE with WHERE changes only orders 102 and 104.
