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

Oracle 11g - Vòng lặp FOR chỉ chèn các ngày trong tuần vào một bảng?

Bạn luôn có thể kiểm tra ngày trong tuần trước khi chèn hàng (tên của các ngày trong tuần sẽ phụ thuộc vào cài đặt NLS của bạn nên đây không phải là giải pháp mạnh mẽ nhất có thể)

 BEGIN
  FOR i IN 1..365 LOOP
    IF( to_char(sysdate-1+i,'fmDAY') NOT IN ('SATURDAY', 'SUNDAY') )
    THEN
      INSERT INTO MY_TABLE (ID, MY_DATE)
        VALUES (i, (to_date(sysdate,'DD-MON-YY')-1)+i);
    END IF;
  END LOOP;
 END;


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Lọc theo ngày trong tuần

  2. Truy vấn con Oracle không thấy biến từ khối ngoài 2 cấp trở lên

  3. Từ cuối cùng trong câu:Trong SQL (có thể sử dụng cụm từ thông dụng?)

  4. Lỗi ORA-00604 khi chèn hàng loạt bên trong TransactionScope

  5. SqlDeveloper:xóa danh sách bí danh mạng