Oracle
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Oracle

Tạo chuỗi ngẫu nhiên chữ hoa và chữ thường trong Oracle

Bạn có thể thực hiện chức năng của riêng bạn. Đây là một tùy chọn:

create or replace function random_str(v_length number) return varchar2 is
    my_str varchar2(4000);
begin
    for i in 1..v_length loop
        my_str := my_str || dbms_random.string(
            case when dbms_random.value(0, 1) < 0.5 then 'l' else 'x' end, 1);
    end loop;
    return my_str;
end;
/

select random_str(30) from dual;

RANDOM_STR(30)
--------------------------------------------------------------------------------
pAAHjlh49oZ2xuRqVatd0m1Pv8XuGs

Bạn có thể muốn điều chỉnh 0.5 để tính đến các kích thước nhóm khác nhau - 26 cho l so với 36 cho x . (.419354839? ). Bạn cũng có thể sử dụng giá trị () và chuyển vào phạm vi bắt đầu và kết thúc của các giá trị ký tự, nhưng giá trị đó sẽ là ký tự cụ thể.

Tại sao ... Oracle cần một lý do? Việc sử dụng x có thể gợi ý rằng nó ban đầu là hệ thập lục phân và đã được mở rộng để bao gồm tất cả các chữ hoa, mà không xảy ra với chúng để thêm một phiên bản chữ hoa hỗn hợp cùng một lúc.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. chọn NLS_LANG cho Oracle

  2. Khóa ngoại trong các lược đồ thay thế với Oracle?

  3. So sánh ngày của Oracle trong mệnh đề where

  4. PIVOT Oracle - chuyển đổi dữ liệu nhiều hàng thành một hàng với nhiều cột, không có dữ liệu tổng hợp

  5. Cách dễ nhất để tạo một cột SN SÀNG trong Oracle là gì?