gpt4 book ai didi

sql - 在 PL/SQL 中使用带有 "LIKE %"(例如 "variable%")的变量?

转载 作者:行者123 更新时间:2023-12-04 09:07:13 25 4
gpt4 key购买 nike

问题类似于使用 喜欢 SQL *PLUS ,其中选择语句包含 喜欢 条款如下:

select * from sometable where somecolumn LIKE 'something%';

如何在游标中使用相同的内容?我尝试使用以下方法:
 cursor c is select * from sometable where somecolumn like 'something%'; 

同上

编辑:我需要得到 某事 作为参数,意思是,select 语句在存储过程中执行。

编辑 2:
create procedure proc1 (search VARCHAR) is

cursor c is select student_name from students where student_name like 'search%';

--我知道使用“search%”检索包含“关键搜索”的学生姓名,但是还有其他方法可以使用这样的变量。
do something;

end;

简而言之,我需要选择包含作为参数传递的值的学生姓名;这可能不是全名,可能足以在 like 子句中使用。

最佳答案

根据我对您问题的理解,您正在使用变量 search引号内。将您的变量放在引号之外,例如:

 create or replace procedure PROC1(search VARCHAR2) 
IS
cursor test_cur(search IN VARCHAR2)
IS
SELECT student_name
FROM student
WHERE student_name LIKE search||'%'; --you're putting you variable within quotes

v_temp_var student.student_name%TYPE;

BEGIN

OPEN test_cur(search);
LOOP
FETCH test_cur INTO v_temp_var;
EXIT WHEN test_cur%NOTFOUND;

DBMS_OUTPUT.PUT_LINE(v_temp_var);
END LOOP;

CLOSE test_cur;

END test;

关于sql - 在 PL/SQL 中使用带有 "LIKE %"(例如 "variable%")的变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10150723/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com