SQL> SELECT name
FROM donor
WHERE name BETWEEN J & R;
NAME
-- -- -- -- -- -- -- -
Jennifer Ames
Nancy Taylor
名前はRobert Brooksです。しかし、RはRよりも大きいので、何をすべきかはわかりません。BETWEEN句を使用して名前が欠落しています。SQL
SQL> SELECT name
FROM donor
WHERE name BETWEEN J & R;
NAME
-- -- -- -- -- -- -- -
Jennifer Ames
Nancy Taylor
名前はRobert Brooksです。しかし、RはRよりも大きいので、何をすべきかはわかりません。BETWEEN句を使用して名前が欠落しています。SQL
これはそこにあなたを取得する必要があります。
SELECT name
FROM donor
WHERE SUBSTR(NAME,1,1) BETWEEN 'J' AND 'R';
SUBSTR
機能は名前だけの最初の文字を比較します。
ここでは例です:
CREATE TABLE DONOR(
NAME VARCHAR2(128)
);
INSERT INTO DONOR VALUES ('Jennifer Ames');
INSERT INTO DONOR VALUES ('Nancy Taylor');
INSERT INTO DONOR VALUES ('Robert Brooks');
SELECT name
FROM donor
WHERE SUBSTR(NAME,1,1) BETWEEN 'J' AND 'R';
結果:
NAME
Jennifer Ames
Nancy Taylor
Robert Brooks
あなたは、アルファベットの次の文字を使用することができますか?
... between 'J' and 'S'
そんなにalexgibbsありがとうございます。 –
@JBen - なぜJとRを使わなければならないのですか? Rogerが提案するものは完璧な意味合いを持っています。唯一の問題は、あなたがその名前を持っている人に正確に 'S'を持っている人がいる場合です。そうでなければ、あなたが必要とするものを**正確に**行います。 'S 'を避ける必要がある場合は、' where name> =' J 'と名前<' S ''と言うことができます。 ''正しい '答えと比較して、 'name'にインデックスがあれば、このアプローチはもっと速く動作します。なぜなら、' substr'を使うと、クエリエンジン**はインデックスを使うことができないからです。 – mathguy
@mathguyウェブサイトの指示には、他の手紙を使用しないことが記載されています。 –
んが、私はここにJとRを使用する必要がない –