2013-10-09 3 views
-6

Написать ЗЕЬЕСТ, который возвращает эти столбцы из Vendors таблицы:Как получить требуемый результат?

  • Колонном продавца VENDOR_NAME
  • Колонном продавца VENDOR_NAME заглавными буквами
  • Колонка vendor_phone
  • последние четыре цифры каждого телефона номер

Когда вы получите это право работы, добавьте столбцы, которые следуют за результирующим набором. Это сложнее, потому что эти столбцы требуют использования функций внутри функций.

  • Второе слово в каждом имени поставщика, если таковое имеется; в противном случае, гасит
  • Колонна vendor_phone с частями числа, разделенных точками, как в 555.555.5555

это то, что я пытался до сих пор:

select vendor_name, UPPER(vendor_name) AS VENDOR_NAME_UPPER, 
vendor_phone, SUBSTR(vendor_phone, 11, 4), 
Replace 
(replace 
(replace(vendor_phone, ') ', '.') 
, '(', '') 
, '-','.') AS vendor_phone_dot, 
SUBSTR(vendor_name, (INSTR(vendor_name, ' ') + 1)) AS Second_Word 
from vendors; 
+1

Почему бы вам не манипулировать этими вещами в программе, а не создавать сложные запросы. –

+1

Здравствуйте. Добро пожаловать в SO. Чтобы ожидать хороших ответов на ваш вопрос, вам нужно попытаться помочь нам понять, в чем проблема, с которой вы сталкиваетесь, при попытке использования какого-либо кода. Проводили ли вы какие-либо исследования о том, что вы опубликовали? Какова структура вашей БД? Что вы пробовали до сих пор, предполагая, что вы вообще что-то пробовали? Что не сработало? – mavrosxristoforos

+0

Я переформатировал вопрос – Steve

ответ

0

Попробуйте это ..

SELECT vendor_name, CONVERT(VARCHAR(50), UPPER(vendor_name)),SUBSTRING(vendor_phone, LEN(vendor_phone)-3 ,4) FROM Vendors 
Смежные вопросы