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

Các thực thể kiểu biến bảng trong Oracle

Một số câu trả lời có thể cho bạn biết rằng Oracle có các biến bảng và nó có ở một mức độ nhất định. Tuy nhiên, hầu hết các câu trả lời sẽ cho bạn biết rằng bạn hoàn toàn không nên làm điều này trong Oracle; đơn giản là không cần.

Trong trường hợp của bạn, tôi chỉ cần sử dụng CTE:

with users as (
    select 1001 as ID, 'Bob' as Name, 25 as Age, 'M' as Gender from dual
    union
    select 1021 as ID, 'Sam' as Name, 29 as Age, 'F' from dual
          )
 , grades as (
    select 1001 as UserID , 120 as ClassID, 4 as Grade from dual
    Union
    select 1001 as UserID , 220 as ClassID, 2 as Grade from dual
    Union
    select 1021 as UserID , 130 as ClassID, 4 as Grade from dual
    Union
    select 1021 as UserID , 230 as ClassID, 4 as Grade from dual
    Union
    select 1021 as UserID , 340 as ClassID, 2 as Grade from dual
           )
select u.ID, u.Name, AVG(g.grade) as gpa
  from users u
  join grades g on u.ID = g.UserID
 group by u.ID, u.Name

CẬP NHẬT:Câu trả lời mà tôi đã cố gắng nhận được trong một thời gian dài là trong nhận xét của Ben bên dưới mà tôi đưa vào đây:"Không có biến nào, bạn có thể tạo nhanh và kết hợp với các bảng khác trong SQL tiêu chuẩn @wcm, vâng . Có một số loại đối tượng khác nhau có thể được tạo cho phép bạn thực hiện điều này, nhưng không chính xác như bạn làm trong T-SQL ".



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Tự động thực thi kích thước bảng cơ sở dữ liệu tối đa bằng cách loại bỏ các hàng cũ

  2. Cài đặt máy khách cơ sở dữ liệu Oracle từng bước

  3. Biến bảng trong thủ tục lưu trữ Oracle

  4. ORA-24247 khi gửi qua FTP

  5. Truy vấn nhiều cập nhật Oracle