32 lines
885 B
PL/PgSQL
32 lines
885 B
PL/PgSQL
CREATE OR REPLACE FUNCTION nn_db.user_get(
|
|
in_search_value nn_db.user.username%TYPE)
|
|
RETURNS TABLE(
|
|
pk_user nn_db.user.pk_user%TYPE
|
|
, lastname nn_db.user.lastname%TYPE
|
|
, firstname nn_db.user.firstname%TYPE
|
|
, middlename nn_db.user.middlename%TYPE
|
|
, username nn_db.user.username%TYPE
|
|
, password_hash nn_db.user.password_hash%TYPE
|
|
, email nn_db.user.email%TYPE
|
|
, phone nn_db.user.phone%TYPE
|
|
, is_admin nn_db.user.is_admin%TYPE
|
|
, is_active nn_db.user.is_active%TYPE)
|
|
AS $$
|
|
BEGIN
|
|
RETURN QUERY SELECT
|
|
nn_db.user.pk_user
|
|
, nn_db.user.lastname
|
|
, nn_db.user.firstname
|
|
, nn_db.user.middlename
|
|
, nn_db.user.username
|
|
, nn_db.user.password_hash
|
|
, nn_db.user.email
|
|
, nn_db.user.phone
|
|
, nn_db.user.is_admin
|
|
, nn_db.user.is_active
|
|
FROM nn_db.user
|
|
WHERE
|
|
nn_db.user.username ILIKE in_search_value
|
|
OR nn_db.user.email ILIKE in_search_value;
|
|
END;
|
|
$$ LANGUAGE plpgsql |