一个变量的多个结果 - SQL
Multiple Results For A Variable - SQL
首先抱歉,我是 SQL 的新手。
我想知道如何为定义的变量输入多个值。
目前我正在使用以下;
UNDEFINE MPAN_CORE
SELECT customer.MPAN.j0003 AS MPAN, customer.AGENT.j0183 AS DA, customer.AGENT.j0205 AS DC, customer.agent.j0178 AS MOP
FROM customer.mpan
INNER JOIN customer.agent
ON customer.mpan.uniq_id = customer.agent.mpan_lnk
WHERE customer.mpan.j0003 = '&&MPAN_CORE'
基本上我希望能够为客户 MPAN 输入多个值,并获得多个结果。目前我必须一次输入一个 MPAN。
不确定这是否可行,也许它就像使用一个字符来划分我的输入值一样简单?
非常感谢任何帮助
谢谢
WHERE customer.mpan.j0003 = '&&MPAN_CORE'
您不能使用等于运算符 =
来获得多个值。对于多个值,您需要使用 IN list.
例如,
SQL> SELECT empno, deptno FROM emp WHERE ename IN ('SMITH','KING','SCOTT');
EMPNO DEPTNO
---------- ----------
7369 20
7788 20
7839 10
SQL>
或者,使用替换变量:
SQL> SELECT empno, deptno FROM emp WHERE ename IN (&a);
Enter value for a: 'SMITH','KING','SCOTT'
old 1: SELECT empno, deptno FROM emp WHERE ename IN (&a)
new 1: SELECT empno, deptno FROM emp WHERE ename IN ('SMITH','KING','SCOTT')
EMPNO DEPTNO
---------- ----------
7369 20
7788 20
7839 10
SQL>
首先抱歉,我是 SQL 的新手。
我想知道如何为定义的变量输入多个值。
目前我正在使用以下;
UNDEFINE MPAN_CORE
SELECT customer.MPAN.j0003 AS MPAN, customer.AGENT.j0183 AS DA, customer.AGENT.j0205 AS DC, customer.agent.j0178 AS MOP
FROM customer.mpan
INNER JOIN customer.agent
ON customer.mpan.uniq_id = customer.agent.mpan_lnk
WHERE customer.mpan.j0003 = '&&MPAN_CORE'
基本上我希望能够为客户 MPAN 输入多个值,并获得多个结果。目前我必须一次输入一个 MPAN。
不确定这是否可行,也许它就像使用一个字符来划分我的输入值一样简单?
非常感谢任何帮助
谢谢
WHERE customer.mpan.j0003 = '&&MPAN_CORE'
您不能使用等于运算符 =
来获得多个值。对于多个值,您需要使用 IN list.
例如,
SQL> SELECT empno, deptno FROM emp WHERE ename IN ('SMITH','KING','SCOTT');
EMPNO DEPTNO
---------- ----------
7369 20
7788 20
7839 10
SQL>
或者,使用替换变量:
SQL> SELECT empno, deptno FROM emp WHERE ename IN (&a);
Enter value for a: 'SMITH','KING','SCOTT'
old 1: SELECT empno, deptno FROM emp WHERE ename IN (&a)
new 1: SELECT empno, deptno FROM emp WHERE ename IN ('SMITH','KING','SCOTT')
EMPNO DEPTNO
---------- ----------
7369 20
7788 20
7839 10
SQL>