英文:
Oracle SQL Iterate through each item
问题
以下是翻译好的部分:
我有一个旨在实现以下目标的简单要求:
结果列1 结果列2
苹果 橙子
苹果 香蕉
苹果 樱桃
橙子 苹果
橙子 香蕉
橙子 樱桃
香蕉 苹果
香蕉 橙子
香蕉 樱桃
樱桃 苹果
樱桃 香蕉
樱桃 橙子
这是我的表格:
CREATE TABLE "FRUITS"
( "FRUIT_NAME" VARCHAR2(100)
) ;
insert into fruits (fruit_name) values ('苹果')
insert into fruits (fruit_name) values ('香蕉')
insert into fruits (fruit_name) values ('樱桃')
insert into fruits (fruit_name) values ('橙子')
有人知道如何实现这个吗?
谢谢
英文:
I have a simple requirement that aims to achieve the following:
Resulting_column_1 Resulting_column_2
Apple Orange
Apple Banana
Apple Cherry
Orange Apple
Orange Banana
Orange Cherry
Banana Apple
Banana Orange
Banana Cherry
Cherry Apple
Cherry Banana
Cherry Orange
This is my table:
CREATE TABLE "FRUITS"
( "FRUIT_NAME" VARCHAR2(100)
) ;
insert into fruits (fruit_name) values ('Apple')
insert into fruits (fruit_name) values ('Banana')
insert into fruits (fruit_name) values ('Cherry')
insert into fruits (fruit_name) values ('Orange')
Anyone knows how to achieve this?
Thanks
答案1
得分: 1
将表与其自身连接,其中名称不相等:
选择 f1.fruit_name f1, f2.fruit_name f2
从 fruits f1
加入 fruits f2
在 f1.fruit_name <> f2.fruit_name;
F1 F2
苹果 香蕉
苹果 樱桃
苹果 橙子
香蕉 苹果
香蕉 樱桃
香蕉 橙子
樱桃 苹果
樱桃 香蕉
樱桃 橙子
橙子 苹果
橙子 香蕉
橙子 樱桃
英文:
Join the table to itself where the names are not equal to each other:
select f1.fruit_name f1, f2.fruit_name f2
from fruits f1
join fruits f2
on f1.fruit_name <> f2.fruit_name;
F1 F2
Apple Banana
Apple Cherry
Apple Orange
Banana Apple
Banana Cherry
Banana Orange
Cherry Apple
Cherry Banana
Cherry Orange
Orange Apple
Orange Banana
Orange Cherry
通过集体智慧和协作来改善编程学习和解决问题的方式。致力于成为全球开发者共同参与的知识库,让每个人都能够通过互相帮助和分享经验来进步。
评论