back

Sql

Structured Query Language. The most common language used for accessing relational databases.
How to Fill Sparse Data With the Previous Non-Empty Value in SQL
The following is a very common problem in all data related technologies and we’re going to look into two very lean, SQL-based solutions for it: How do I fill the cells of a sparse data set with the...
Java, SQL and jOOQ.
Oracle LONG and LONG RAW Causing “Stream has already been closed” Exception
Like many old databases, Oracle has legacy data types, which are rather nasty to work with in every day SQL. Usually, you don’t run into wild encounters of LONG and LONG RAW data types anymore, but...
Java, SQL and jOOQ.
A Curious Incidence of a jOOQ API Design Flaw
jOOQ is an internal domain-specific language (DSL), modelling the SQL language (external DSL) in Java (the host language). The main mechanism of the jOOQ API is described in this popular article: T...
Java, SQL and jOOQ.
Reactive Database Access – Part 3 – Using jOOQ with Scala, Futures and Actors
We’re very happy to continue our a guest post series on the jOOQ blog by Manuel Bernhardt. In this blog series, Manuel will explain the motivation behind so-called reactive technologies and after i...
Java, SQL and jOOQ.
Impress Your Coworkers by Using SQL UNPIVOT!
I’ve recently encountered a very interesting question on Stack Overflow by an unnamed user. The question was about generating a table of the following form in Oracle, using a table valued function:...
Java, SQL and jOOQ.
How to Detect Slow Queries with jOOQ
Just now, we implemented a nice little feature in jOOQ’s code generator: https://github.com/jOOQ/jOOQ/issues/4974 It detects whenever the jOOQ code generator runs a slow query to reverse engineer s...
Java, SQL and jOOQ.
Using Oracle AQ via Java 8 Streams
One of the most awesome features of the Oracle database is Oracle AQ: Oracle Database Advanced Queuing. The AQ API implements a full fledged, transactional messaging system directly in the database...
Java, SQL and jOOQ.
jOOQ Tuesdays: Glenn Paulley Gives Insight into SQL’s History
Welcome to the jOOQ Tuesdays series. In this series, we’ll publish an article on the third Tuesday every other month where we interview someone we find exciting in our industry from a jOOQ perspect...
Java, SQL and jOOQ.
The Mute Design Pattern
Have you been writing a lot of code following the Mute-Design-Pattern™ lately? E.g. There’s an easier way with Java 8! Just add this very useful tool to your Utilities or Helper class: Now you can ...
Java, SQL and jOOQ.
SQL JOIN or EXISTS? Chances Are, You’re Doing it Wrong
I’ve noticed this very consistently with a lot of customers, and also with participants of our Data Geekery SQL Workshop (which I highly recommend to everyone, if you excuse the advertising): A lot...
Java, SQL and jOOQ.
Java A’s new Local-Variable Type Inference
News could hardly get more exciting than this, for a programming language aficionado! There is now a JEP 286 for Local-Variable Type Inference with status “Candidate”. And a request for feedback by...
Java, SQL and jOOQ.
Ceylon Might Just be the Only (JVM) Language that Got Nulls Right
Here we go again. THAT TOPIC. But hang on. The approach discussed here (and in the Ceylon language) is not something you see every day. At the same time, it is very cunning. Nulls are baked into th...
Java, SQL and jOOQ.