2016-11-25 4 views
0

Ich kann den HQL nicht finden, um mein Problem zu lösen. Ich habe 2 schöne Tische.(Hibernate) Suche nach Zeichenfolgen, die mit einem Muster übereinstimmen

Die erste Tabelle hat eine Spalte mit Zeichenfolgen in der Form 'xxx-xxx-xxx'.

Die zweite Tabelle enthält eine Spalte mit Zeichenfolgen in der Form 'some_prefix: xxx-xxx-xxx'.

Was ich tun möchte, ist eine Teilmenge von Zeilen in der zweiten Tabelle, finden Sie alle Einträge in der ersten Tabelle, die im 'xxx-xxx-xxx' Teil übereinstimmen. Und ich weiß sicher, dass es nicht mehr als einen Eintrag in der ersten Tabelle für jede Zeile in der zweiten geben kann.

Ich bin auf der Suche nach einer HQL-Abfrage, die diese Objekte abruft, aber ich könnte auch eine SQL verwenden.

Prost.

Antwort

0

Sie können eine Kombination aus Locate und Substring-Funktion für die Spalte der zweiten Tabelle verwenden, um die Zeichenfolge nach dem Zeichen: zu erhalten.

Ich habe es nicht getestet, aber es sollte so etwas sein:

where table1.column = substring(table2.column, locate(table2.column, ':')) 
Verwandte Themen