Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Оператор BETWEEN  [new]
Ksuha080808
Member

Откуда:
Сообщений: 4
Друзья, добрый вечер!
Вот такая проблема, не могу написать этот запрос с BETWEEN. Помогите пожалуйста.

Выбрать всех заказчиков из таблицы Customers, у которых вторая буква названия страны из диапазона o и r. Использовать оператор BETWEEN. Запрос должен высвечивать только колонки CustomerID и Country и отсортирован по Country. Почему работает запрос с условием заглавного регистра букв O и R?

USE Northwind
SELECT CustomerID, Country FROM Customers
WHERE Country between '_o' and '_r'
Order by Country


Какой знак поставить '?o' and '?r', что бы запрос работал?
7 май 14, 21:49    [15988015]     Ответить | Цитировать Сообщить модератору
 Re: Оператор BETWEEN  [new]
chabapok
Member

Откуда: Харьков
Сообщений: 763
Ksuha080808,

тут не beetweeen нужен. Тут нужен RLIKE.
7 май 14, 22:36    [15988145]     Ответить | Цитировать Сообщить модератору
 Re: Оператор BETWEEN  [new]
Ksuha080808
Member

Откуда:
Сообщений: 4
chabapok,

Это я в курсе! С LIKE, все ок! Требуют через Between
8 май 14, 00:57    [15988532]     Ответить | Цитировать Сообщить модератору
 Re: Оператор BETWEEN  [new]
miksoft
Member

Откуда:
Сообщений: 38836
Ksuha080808,

Если решать задачу "в лоб", то так:
SELECT CustomerID, Country FROM Customers
WHERE LOWER(SUBSTR(Country,2,1)) between 'o' and 'r'
Order by Country
8 май 14, 01:00    [15988539]     Ответить | Цитировать Сообщить модератору
 Re: Оператор BETWEEN  [new]
Ksuha080808
Member

Откуда:
Сообщений: 4
miksoft,

SUBSTR не является известным имя встроенной функции.
К сожалению, вот такая проблема. Может, еще что то можно придумать?
8 май 14, 11:19    [15989816]     Ответить | Цитировать Сообщить модератору
 Re: Оператор BETWEEN  [new]
miksoft
Member

Откуда:
Сообщений: 38836
Ksuha080808
SUBSTR не является известным имя встроенной функции.
А у вас точно MySQL ?
8 май 14, 11:24    [15989871]     Ответить | Цитировать Сообщить модератору
 Re: Оператор BETWEEN  [new]
tanglir
Member

Откуда:
Сообщений: 28966
Ksuha080808
SUBSTR не является известным имя встроенной функции.
К сожалению, вот такая проблема. Может, еще что то можно придумать?
асилить букварь на уровне, достаточном для того, чтобы уметь самостоятельно отличить mysql от mssql?
8 май 14, 11:24    [15989875]     Ответить | Цитировать Сообщить модератору
 Re: Оператор BETWEEN  [new]
tanglir
Member

Откуда:
Сообщений: 28966
miksoft
Ksuha080808
SUBSTR не является известным имя встроенной функции.
А у вас точно MySQL ?

Ksuha080808
USE Northwind
таки как вы полагаете?
8 май 14, 11:25    [15989882]     Ответить | Цитировать Сообщить модератору
 Re: Оператор BETWEEN  [new]
miksoft
Member

Откуда:
Сообщений: 38836
tanglir
miksoft
пропущено...
А у вас точно MySQL ?

Ksuha080808
USE Northwind

таки как вы полагаете?
Никак не полагаю, слово Northwind мне ни о чем не говорит.
8 май 14, 11:27    [15989904]     Ответить | Цитировать Сообщить модератору
 Re: Оператор BETWEEN  [new]
alex564657498765453
Member

Откуда:
Сообщений: 1925
miksoft
tanglir
пропущено...

пропущено...
таки как вы полагаете?
Никак не полагаю, слово Northwind мне ни о чем не говорит.


ГЫГЫ
а мне говорит, база идущая в копмлекте с МС СКЛ сервером



кароче ксюша явно учиться(числиться)студенткой, и видать трошки курнула за победу.

ей надо

SUBSTRING
8 май 14, 11:47    [15990079]     Ответить | Цитировать Сообщить модератору
 Re: Оператор BETWEEN  [new]
tanglir
Member

Откуда:
Сообщений: 28966
miksoft,

https://www.google.ru/search?q=northwind
первая же ссылка:
http://www.microsoft.com/en-us/download/details.aspx?id=23654 - "Northwind and pubs Sample Databases for SQL Server 2000"

Это стандартная демобаза для мсскл.
8 май 14, 11:47    [15990081]     Ответить | Цитировать Сообщить модератору
 Re: Оператор BETWEEN  [new]
alex564657498765453
Member

Откуда:
Сообщений: 1925
для прогульщицы занятий.

SUBSTRING и SUBSTR это одна и таже функция, но в вузах преподаватели полагают (и таки оно верно) что студенту стоит научиться писать на языке ANSI SQL а не на диалекте одном. ибо анси с пивом под любую субд подойдёт(иногда есть нестыковочки но...можно щитать что нету)

и вот первый вариант - это функция стандарта АНСИ СКЛ

Модератор: Тема перенесена из форума "MySQL".


Сообщение было отредактировано: 8 май 14, 12:00
8 май 14, 11:54    [15990141]     Ответить | Цитировать Сообщить модератору
 Re: Оператор BETWEEN  [new]
Ksuha080808
Member

Откуда:
Сообщений: 4
alex564657498765453,
USE Northwind на это можете не обращать внимание, это действительно стандартная база, для обучения.

Работаю я на "Средство Microsoft SQL Server Management Studio Express". Возможно, что то перепутала, но увольте, когда вас бросают как котят и делайте как хотите и на чем хотите, об этом не задумываешься!

SUBSTRING все работает, извините...не такая умничка как вы)))

Буду отличить mysql от mssql и учту все ваши пожелания, спасибо.
8 май 14, 12:36    [15990544]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить