Skip to Main Content

Past Tournament Quizzes

View your results and or take one of these quizzes now.

Filters

Expected format: YYYY-MM-DD
Expected format: YYYY-MM-DD

All Tournaments

Take
Quiz
View
Results
Ended
OnDescending
Feature / Summary / AuthorPlayed InCommentaryScore
2020-06-26 FridayDatabase Design: Character Data Types

You can reduce the maximum length of a VARCHAR2. To do this all existing values must be less than or equal to the new limit.

Author: Chris Saxon [42847-9943885]
Dynamite DB DesignNo Comments
Last: No Comments
-
2020-06-26 FridaySQL: LAST_VALUE

When using RANGE BETWEEN in LAST_VALUE, the result is deterministic even if the ORDER BY is non-unique - LAST_VALUE will use the MAX of the argument for those rows that are tied for being last in the ORDER BY. A similar, though reversed, rule exists for FIRST_VALUE.

Author: Kim Berg Hansen [43647-9923223]
Select from SQLNo New Comments

Last: 2020-06-24 17:29:26
-
2020-06-26 FridayOracle PL/SQL: Working with Object Type Methods

You can override supertype methods when they have matching signatures (parameter lists). You can also overload methods within a type.

Author: Steven Feuerstein [43687-9951021]
PL/SQL ChallengeNo Comments
Last: No Comments
-
2020-06-26 FridayLogic: Deductive Logic

Key to solving deductive logic puzzles is coming up with a strategy for identifying and discarding possibilities in a systematic fashion.

Author: Eli Feuerstein [43627-9923056]
I Love LogicNo Comments
Last: No Comments
-
2020-06-19 FridaySQL: JSON_EXISTS

The ON ERROR clause in JSON_EXISTS support TRUE, ERROR or FALSE with FALSE being the default.

Author: Kim Berg Hansen [43567-9890768]
Select from SQLNo Comments
Last: No Comments
-
2020-06-19 FridayOracle PL/SQL: Iterating Through Collection Contents

When a collection is sparse (undefined index values between lowest and highest), you need to be very careful about how you choose to iterate through the elements of that collection

Author: Steven Feuerstein [43547-9890747]
PL/SQL ChallengeNo Comments
Last: No Comments
-
2020-06-19 FridayLogic: Deductive Logic

Key to solving deductive logic puzzles is coming up with a strategy for identifying and discarding possibilities in a systematic fashion.

Author: Eli Feuerstein [43327-9878673]
I Love LogicNo Comments
Last: No Comments
-
2020-06-19 FridayDatabase Design: Second Normal Form

For a table to be in 2NF, all non-key columns must depend on all the columns in its primary key.

Author: Chris Saxon [42287-9897011]
Dynamite DB DesignNo New Comments
Objections:
Last: 2020-06-19 16:20:12
-
2020-06-12 FridayLogic: Deductive Logic

Key to solving deductive logic puzzles is coming up with a strategy for identifying and discarding possibilities in a systematic fashion.

Author: Eli Feuerstein [43109-9841140]
I Love LogicNo Comments
Last: No Comments
-
2020-06-12 FridayOracle PL/SQL: Declaring REF CURSOR Types and Cursor Variables

When you are using cursor variables with static SQL or you know  the number and types of expressions being returned by the dynamic SELECT, use a strong REF CURSOR so that at compile time, you will be informed of mismatches.

Author: Steven Feuerstein [43270-9856495]
PL/SQL ChallengeNo Comments
Last: No Comments
-
2020-06-12 FridayDatabase Design: Hybrid Partitioning

Hybrid partitioned tables can store regular row data in some partitions. And read non-database files on the server in external partitions.

There must be at least one internal partition for a hybrid table.

Author: Chris Saxon [42507-9851266]
Dynamite DB DesignNo New Comments

Last: 2020-06-15 17:37:47
-
2020-06-12 FridaySQL: VALUE

When selecting from an object table you have the object attributes available as columns. If you want to select the object itself rather than the individual attributes, you can use the VALUE function.

Author: Kim Berg Hansen [43207-9851094]
Select from SQLNo Comments
Last: No Comments
-
2020-06-05 FridayLogic: Deductive Logic

Key to solving deductive logic puzzles is coming up with a strategy for identifying and discarding possibilities in a systematic fashion.

Author: Eli Feuerstein [43047-9655501]
I Love LogicNo Comments
Last: No Comments
-
2020-06-05 FridaySQL: JSON_VALUE

JSON_VALUE supports ON EMPTY clause that can specify what should happen if the desired JSON path isn't there. You can set it to NULL or cause an error, but you can also make it return an indicative value like for example 'N/A'.

Author: Kim Berg Hansen [43067-9716796]
Select from SQLNo Comments
Last: No Comments
-
2020-06-05 FridayOracle PL/SQL: The CONTINUE Statement

The CONTINUE and CONTINUE WHEN statements can help you simplify the code inside your loops, making it easier to understand and maintain.

Author: Steven Feuerstein [43087-9716780]
PL/SQL ChallengeNo Comments
Last: No Comments
-
2020-06-05 FridayDatabase Design: Character Data Types

Oracle Database blank pads values in (N)CHAR columns up to the character limit.

When you compare CHAR and VARCHAR2 values, the database uses nonpadded semantics. So the VARCHAR2 must have the same number of trailing spaces as the padded CHAR for the values to be equal.

Author: Chris Saxon [42427-9716794]
Dynamite DB DesignNo Comments
Last: No Comments
-
2020-05-29 FridaySQL: GROUP BY Clause

You can filter the output of aggregate functions:

  • Using the HAVING clause
  • In the WHERE clause of an outer query
Author: Chris Saxon [42887-9474413]
Select from SQLNo Comments
Last: No Comments
-
2020-05-29 FridayOracle PL/SQL: No Mutating Error When Inserting Single Row

When I execute a single row insert, a BEFORE INSERT trigger will not cause a mutating table error, since I am inserting just that row and how it could it be affecting anything else? But if I choose a way to insert rows that can stuff in more than 1 at a time, such as INSERT-SELECT, then even if only 1 row is being inserted, the mutating table error will be raised. This is also true for FORALL-INSERT, but only when more than 1 row is being inserted.

Author: Steven Feuerstein [42947-9444783]
PL/SQL ChallengeNo New Comments
Objections:
Last: 2020-05-30 11:16:30
-
2020-05-29 FridayDatabase Design: Primary Keys

Primary keys enforce uniqueness across a set of columns.

Author: Chris Saxon [42107-9504215]
Dynamite DB DesignNo Comments
Last: No Comments
-
2020-05-29 FridayLogic: Deductive Logic

Key to solving deductive logic puzzles is coming up with a strategy for identifying and discarding possibilities in a systematic fashion.

Author: Eli Feuerstein [42907-9415282]
I Love LogicNo Comments
Last: No Comments
-
2020-05-22 FridayLogic: Deductive Logic

Key to solving deductive logic puzzles is coming up with a strategy for identifying and discarding possibilities in a systematic fashion.

Author: Eli Feuerstein [42808-9241603]
I Love LogicNo Comments
Last: No Comments
-
2020-05-22 FridayDatabase Design: Check Constraints

You can check the number of elements in a JSON array with the size() item method. This was added in Oracle Database 18c.

Author: Chris Saxon [42047-9280697]
Dynamite DB DesignNo Comments
Last: No Comments
-
2020-05-22 FridayOracle PL/SQL: String Indexing

One nice application of string indexed associative arrays is to easily ensure unique entries. If the string you specify as the index matches one already in the collection, it will overwrite the current element value.

Author: Steven Feuerstein [42827-9270166]
PL/SQL ChallengeNo Comments
Last: No Comments
-
2020-05-22 FridaySQL: DISTINCT

DISTINCT is not a function. The DISTINCT operation always happens after the projection (SELECT clause content), and is applied to the entirety of the projection, explains Lukas Eder.

Author: Steven Feuerstein [42867-9327795]
Select from SQLNo Comments
Last: No Comments
-
2020-05-15 FridaySQL: Date, Timestamp and Interval Types

Using numbers for datetime arithmetic always gives you a DATE, even if you add a number to a TIMESTAMP. So all fractional seconds and timezone information will be lost.

Author: Kim Berg Hansen [42691-9046799]
Select from SQLNo Comments
Last: No Comments
-
2020-05-15 FridayLogic: Deductive Logic

Key to solving deductive logic puzzles is coming up with a strategy for identifying and discarding possibilities in a systematic fashion.

Author: Eli Feuerstein [42649-9019663]
I Love LogicNo Comments
Last: No Comments
-
2020-05-15 FridayDatabase Design: Intervals

An INTERVAL DAY TO SECOND stores time periods ranging from days down to second with nine decimal places.

You can specify the precision for days and seconds when defining a column of this data type:

interval day [ ( day_precision ) ] to 
         second [ ( fractional_seconds_precision ) ]
Author: Chris Saxon [42367-9101492]
Dynamite DB DesignNo New Comments

Last: 2020-05-19 07:45:50
-
2020-05-15 FridayOracle PL/SQL: Bulk-Fetching from a Cursor Into One Collection of Records

There is no need to create separate collections when bulk collecting multiple columns or expressions in the SELECT list.

Author: Steven Feuerstein [42727-9101499]
PL/SQL ChallengeNo New Comments

Last: 2020-05-17 08:17:21
-
2020-05-08 FridayOracle PL/SQL: Use of label with GOTO

Labels share the same name space as subprograms and package-level variables/constants.

Author: Steven Feuerstein [42567-8912461]
PL/SQL ChallengeNo Comments
Last: No Comments
-
2020-05-08 FridayDatabase Design: Indexes

Attribute clustering defines a physical order for rows in a table. This only applies to direct path operations, data movement and table creation.

Author: Chris Saxon [41887-8912417]
Dynamite DB DesignNo Comments
Last: No Comments
-
2020-05-08 FridaySQL: DISTINCT

DISTINCT and its synonym, UNIQUE, return one row for each unique combination of values in the select list.

GROUP BY will also return one row for each unique combination of values in its list.

Author: Chris Saxon [42187-8912458]
Select from SQLNo Comments
Last: No Comments
-
2020-05-08 FridayLogic: Deductive Logic

Key to solving deductive logic puzzles is coming up with a strategy for identifying and discarding possibilities in a systematic fashion.

Author: Eli Feuerstein [42527-8833775]
I Love LogicNo Comments
Last: No Comments
-
2020-05-01 FridaySQL: XMLExists

If you want to query XMLTYPE for data with a given node having a non-null value, you have to be careful whether or not your XPath expression in XMLEXISTS or XMLQUERY might find nodes having no value in them.

Author: Kim Berg Hansen [42467-8656815]
Select from SQLNo Comments
Last: No Comments
-
2020-05-01 FridayDatabase Design: Column Defaults

From Oracle Database 12c, you can define an auto-incrementing column with either:

  • A default of sequence.nextval
  • An identity column

You can't add the identity property to existing columns.

Author: Chris Saxon [41807-8731495]
Dynamite DB DesignNo New Comments

Last: 2020-05-08 09:56:30
-
2020-05-01 FridayLogic: Deductive Logic

Key to solving deductive logic puzzles is coming up with a strategy for identifying and discarding possibilities in a systematic fashion.

Author: Eli Feuerstein [42447-8656796]
I Love LogicNo Comments
Last: No Comments
-
2020-05-01 FridayOracle PL/SQL: Evaluation of NVL Arguments

Every time NVL is called, both arguments are evaluated, even if the first argument is not null. This is generally not the case for CASE and COALESCE. But when these are executed inside SQL statements, the sequence NEXTVAL operator is executed each time.

Author: Steven Feuerstein [42487-8731511]
PL/SQL ChallengeNo New Comments
Objections:
Last: 2020-04-29 14:05:30
-
2020-04-24 FridayLogic: Deductive Logic

Key to solving deductive logic puzzles is coming up with a strategy for identifying and discarding possibilities in a systematic fashion.

Author: Eli Feuerstein [42387-8513234]
I Love LogicNo Comments
Last: No Comments
-
2020-04-24 FridaySQL: REGEXP_SUBSTR

You need to be careful with regular expressions if your pattern requires optional preceding and trailing characters to be considered together as a pair and not separately.

Author: Kim Berg Hansen [42407-8560134]
Select from SQLNo Comments
Last: No Comments
-
2020-04-24 FridayOracle PL/SQL: Stateful Packages and the ORA-04068 Error

When your package has "state" (one or more variables defined at the package level), a change that invalidates the package (such as modifying a table the package references) can result in an ORA-04061 error. The package has to be recompiled before it can be invoked. Defining the package as serially reusable will avoid this error, since package state is then discarded after each use of elements in the package.

Author: Steven Feuerstein [42347-8399554]
PL/SQL ChallengeNo New Comments

Last: 2020-04-25 07:09:42
-
2020-04-24 FridayDatabase Design: Table Clusters

You can create single table hash clusters. These are tables clusters that can only store one table.

Author: Chris Saxon [41747-8560077]
Dynamite DB DesignNo Comments
Last: No Comments
-
2020-04-17 FridayDatabase Design: Permissions

To allow other database users to access your tables, you need to grant them access. You can do this directly or via a role.

Author: Chris Saxon [41727-8399381]
Dynamite DB DesignNo Comments
Last: No Comments
-
2020-04-17 FridaySQL: PRESENTV

PRESENTV in MODEL clause can be used to determine a value depending on whether or not a referenced cell exists before MODEL clause evaluation.

Author: Kim Berg Hansen [42327-8377367]
Select from SQLNo Comments
Last: No Comments
-
2020-04-17 FridayOracle PL/SQL: Parameters

This error is returned not only when you use the same name more than once in a parameter list, but also if you have a local variable with the same name as a parameter. If, however, that local variable is defined within a nested scope, then the error does not occur.

Author: Steven Feuerstein [42267-8270288]
PL/SQL ChallengeNo Comments
Last: No Comments
-
2020-04-17 FridayJava: Collections

How to use the TreeSet Collection and  how to sort a collection.

Author: Rafael Chinelato Del Nero [29446-8490108]
Jump Into JavaNo New Comments
Objections:
Last: 2019-02-13 15:59:19
-
2020-04-17 FridayLogic: Deductive Logic

Key to solving deductive logic puzzles is coming up with a strategy for identifying and discarding possibilities in a systematic fashion.

Author: Eli Feuerstein [42307-8333734]
I Love LogicNo Comments
Last: No Comments
-
2020-04-10 FridaySQL: UPDATE Statement

Normally you just UPDATE with usual access/filter predicates in the WHERE clause and the optimizer takes case of any possible partition pruning, but it is possible in the UPDATE syntax to specify manually the partition(s) you want to update.

Author: Kim Berg Hansen [42247-8249583]
Select from SQLNo Comments
Last: No Comments
-
2020-04-10 FridayDatabase Design: Indexes

Including columns in the ORDER BY of a query in an index can enable the database to avoid a sort operation.

Author: Chris Saxon [41647-8249529]
Dynamite DB DesignNo Comments
Last: No Comments
-
2020-04-10 FridayOracle PL/SQL: Numeric FOR Loops

PL/SQL (unlike some other programming languages) does not offer a STEP option for the numeric FOR loop. You need to devise your own workarounds.

Author: Kim Berg Hansen [42147-8071814]
PL/SQL ChallengeNo New Comments

Last: 2020-04-08 11:59:50
-
2020-04-10 FridayLogic: Deductive Logic

Key to solving deductive logic puzzles is coming up with a strategy for identifying and discarding possibilities in a systematic fashion.

Author: Eli Feuerstein [42227-8189196]
I Love LogicNo Comments
Last: No Comments
-
2020-04-03 FridayDatabase Design: Views

Using the subquery restriction clause of views, you can define a view as either:

  • Read-only
  • Prohibiting DML producing rows not included in the subquery

The syntax for this is:

create view <view_name> as <query> 
with { read only | check option } 
  [ constraint <constraint_name> ]
Author: Chris Saxon [41567-8091087]
Dynamite DB DesignNo Comments
Last: No Comments
-
  • 1 - 50