These concepts are related to the sql statement in oracle and in RDBMS in general. Projection This is a vertical subset of table columns (the select list) , including all rows.It may include one column, two columns or all table columns.Projection answers the question: which columns the query shall return? For example:select empno , ename, … Continue reading Back to Basics – What is the Difference between Selection and Projection?
Loading Arabic Data Into Oracle Database using SQLCL

This is a follow up post on my previous post:https://ahmedfattah.com/2019/12/15/loading-data-into-oracle-database-from-text-csv-files/If you read this post, you find that we uploaded some data , part of it was Arabic data, and although it was loaded successfully, the Arabic data was corrupted (appeared as ???????). In this post, we see how we can configure sqlcl to load and … Continue reading Loading Arabic Data Into Oracle Database using SQLCL
Oracle Database 32-bit Funny Migration to 64-bit
Objective: Migrating one 11.1.0.7 32-bit database that resides on an old Windows 2008 (32-bit) (4GB memory) to Windows 2008 64-bit (no upgrade) on a brand new server with 64GB memory. {At 2017 and still there is 11.1.0.7 database ==> yes there is!} Introduction and Background I have a client with the following very old environment: … Continue reading Oracle Database 32-bit Funny Migration to 64-bit
Oracle SQL: Normalize the UnNormalized
What is the problem? Sometimes you are faced with a bad (poorly normalized) schema design. For example: But, you may need the output to be in the following normalized form: The correct solution may be to fix the schema design, but in most cases this will not be feasible. Test Case 1: We need to … Continue reading Oracle SQL: Normalize the UnNormalized
Formatting a Wrapped Execution Plan
If you received or produced an execution plan like the following unreadable one: ---------------------------------------------------------------------------------------------------| Id | Operation | Name | E-Rows | OMem |1Mem | Used-Mem |---------------------------------------------------------------------------------------------------| 0 | SELECT STATEMENT | | | || || 1 | SORT AGGREGATE | | 1 | || ||* 2 | HASH JOIN | | 13 | 1102K|1102K| … Continue reading Formatting a Wrapped Execution Plan