MySQL, 간단한 함수 만들기
간단한 MySQL 함수를 만들고 싶습니다. MySQL 절차가 있습니다.
CREATE PROCEDURE getUser(gU INT)
SELECT * FROM Company
WHERE id_number = gU;
CALL getUser(2);
이것을 MySQL 함수로 만드는 데 도움이 필요합니다.절차에 비해 기능을 사용하는 것의 장점과 단점은 무엇입니까?
이것은 mysql 함수의 예입니다.도움이 되길 바랍니다.(아직 테스트하지 않았지만 작동해야 합니다.)
DROP FUNCTION IF EXISTS F_TEST //
CREATE FUNCTION F_TEST(PID INT) RETURNS VARCHAR
BEGIN
/*DECLARE VALUES YOU MAY NEED, EXAMPLE:
DECLARE NOM_VAR1 DATATYPE [DEFAULT] VALUE;
*/
DECLARE NAME_FOUND VARCHAR DEFAULT "";
SELECT EMPLOYEE_NAME INTO NAME_FOUND FROM TABLE_NAME WHERE ID = PID;
RETURN NAME_FOUND;
END;//
MySQL 함수 예:
mysql 터미널을 엽니다.
el@apollo:~$ mysql -u root -pthepassword yourdb
mysql>
함수가 이미 있는 경우 해당 함수를 삭제합니다.
mysql> drop function if exists myfunc;
Query OK, 0 rows affected, 1 warning (0.00 sec)
함수 만들기
mysql> create function hello(id INT)
-> returns CHAR(50)
-> return 'foobar';
Query OK, 0 rows affected (0.01 sec)
테스트할 간단한 테이블 만들기
mysql> create table yar (id INT);
Query OK, 0 rows affected (0.07 sec)
표 yar에 세 개의 값을 삽입합니다.
mysql> insert into yar values(5), (7), (9);
Query OK, 3 rows affected (0.04 sec)
Records: 3 Duplicates: 0 Warnings: 0
yar에서 모든 값을 선택하고 매번 함수 hello를 실행합니다.
mysql> select id, hello(5) from yar;
+------+----------+
| id | hello(5) |
+------+----------+
| 5 | foobar |
| 7 | foobar |
| 9 | foobar |
+------+----------+
3 rows in set (0.01 sec)
방금 일어난 일을 언어화하고 내면화합니다.
하나의 매개 변수를 사용하는 hello라는 함수를 만들었습니다.매개 변수가 무시되고 다음을 반환합니다.CHAR(50)
'foobar' 값을 포함합니다.yar라는 테이블을 만들고 그 테이블에 세 개의 행을 추가했습니다.select 문은 함수를 실행합니다.hello(5)
yar에서 반환되는 각 행에 대해.
변경 시도CREATE FUNCTION F_TEST(PID INT) RETURNS VARCHAR
이 부분CREATE FUNCTION F_TEST(PID INT) RETURNS TEXT
다음 줄도 바꿔주세요.
DECLARE NAME_FOUND TEXT DEFAULT "";
그건 작동할 거야.
언급URL : https://stackoverflow.com/questions/14606900/mysql-create-a-simple-function
'programing' 카테고리의 다른 글
MariaDB(MySQL)는 왜 숫자 리터럴을 문자열로 취급합니까? (0) | 2023.08.15 |
---|---|
Ajax 클라이언트 측 프레임워크가 As를 로드하지 못했습니다.넷 4.0 (0) | 2023.08.10 |
이름 열의 MySQL 별칭이 의도한 대로 작동하지 않음 (0) | 2023.08.10 |
Pandas DataFrame의 행 인덱스 값을 목록으로 가져오시겠습니까? (0) | 2023.08.10 |
powershell의 읽기-호스트 기능을 사용하여 외부 서비스의 암호를 수락하려면 어떻게 해야 합니까? (0) | 2023.08.10 |