POSITION()() — SQL Technical Interview Questions & Answers

POSITION()()

POSITION()()

  • POSITION() POSITION('a' IN name) — SQL form of locate. You use it in SELECT (and sometimes WHERE/UPDATE). It does not change stored data unless you UPDATE … SET col = POSITION(col).
  • Board: SELECT POSITION('a' IN name) FROM students; Run it. Say the result out loud. If the column is NULL, the result is often NULL — wrap with IFNULL if you need a blank instead.
  • String indexes in MySQL start at 1, not 0 (SUBSTR, INSTR, LEFT). IN is part of the syntax here.
  • Interview: name POSITION, one argument list, one example on the students table. Don’t recite every string function.
  • On the example next to this theory: POSITION()(): create two demo rows, then SELECT qty >= 2 ordered. Say which labels come back.

Technical Interview Tip: Say what POSITION returns, then SELECT POSITION('a' IN name) FROM students;

Code Examples for POSITION()()

POSITION()() — sample query

-- POSITION()()
CREATE TABLE demo (
  id INTEGER PRIMARY KEY,
  label TEXT NOT NULL,
  qty INTEGER DEFAULT 0
);
INSERT INTO demo (id, label, qty) VALUES
  (1, 'alpha', 2),
  (2, 'beta', 5);
SELECT label, qty FROM demo WHERE qty >= 2 ORDER BY qty DESC;

POSITION()(): create two demo rows, then SELECT qty >= 2 ordered. Say which labels come back.

How to Explain POSITION()() to an Interviewer

What does POSITION do?

POSITION('a' IN name) — SQL form of locate SELECT POSITION('a' IN name) FROM students;

Does it UPDATE the table?

No, unless you write UPDATE SELECT only prints