= What is the dual table in the Oracle database Sometimes in Select queries you can see a mythic "dual" table. What the hell is it? Let's see what is inside: ```sql slect * from dual ``` Result: ``` dummy -------- X ``` This table contains one column (`dummy`) and one row (with `X` value), but it's not important at all, because the `dual` table is used when some "static" results are required. The thing here is that Oracle **requires a table name** in `select from` queries, even if selected data doesn't depend on tables used in a query. Because the `dual` table has only one row, all constants are returned only once. Here are a few examples: Get constant values: ```sql select 23 from dual ``` ```sql select 12 + 42 from dual ``` In the example below the value for the parameter `pvalue` comes from outside, and the result of the query depends on it only, not on any rows in a database: ```sql select decode(:pvalue, 1, 'True', 'False') from dual ``` Get a list of numbers (here we utilized the `level` pseudocolum): ```sql select level lvl from dual connect by level < 11; ``` Output: ``` LVL ---------- 1 2 3 4 5 6 7 8 9 10 ```