2013-12-09 2 views
0

Есть две таблицы:Как вы выбираете последнюю строку в значении String?

Student(sid integer, sname varchar(20), programme varchar(4), level integer, age integer) 
Tutor(tid integer, tname varchar(20)) 

Задача состоит в том, чтобы найти имена всех ИТ-студентов, которые учатся в классе учил наставник, чья фамилия Хоффман.

Это то, что я до сих пор:

SELECT s.sname 
FROM student s, tutor t 
WHERE s.programme = 'IT' AND t.tname = '%Hoffman'; 

Однако часть в «% Хоффмана» будет искать только строку, которая содержит «Hoffman», так что технически, если, если бы кто-нибудь с Хоффманом как первое имя, запрос также вернет его данные.

Столбец tname имеет тип String и состоит из имени, пробела и фамилии, а также возможных средних имен между ними.

Как вы выбираете последнюю строку (или индекс?) Значения в t.tname в этом случае?

ответ

0

Вы могли бы использовать что-то вроде этого:

WHERE s.programme = 'IT' и RIGHT (t.tname, 7)

поскольку 'Hoffman' имеет 7 символов

+0

или вы можете также просто используйте идентификатор репетитора имени наставника – Kentot

Смежные вопросы