Wir verwenden SQL Server hauptsächlich für unsere Abfragen, aber wenn wir Java verwenden, scheint es in einer Oracle-Engine ausgeführt zu werden. In this question fragte ich nach der SQL Server-Methode zum Zählen von Datensätzen aus mehreren Tabellen seit den meisten Zeit SQL Server läuft genauso wie Oracle. Ich konnte Daten von dieser Abfrage erhalten:Oracle-Unterabfrage, die keine Datensätze zurückgibt
declare @count table (count1 int, count2 int, count3 int)
INSERT INTO @count
select (SELECT COUNT(*) FROM Bike),
(SELECT COUNT(*) FROM Car),
(SELECT COUNT(*) FROM Truck)
select * from @count;
Allerdings, wenn ich dies in Java, bekomme ich einen Fehler, dass keine Datensätze zurückgegeben wurden. Irgendeine Idee, was ich hier tun kann, um das zu beheben?
Oracle hat keine Tabellenvariablen, daher bin ich verwirrt darüber, welchen Code Sie tatsächlich ausgeführt haben. –
Unabhängig von dem Code, den ich ausgeführt habe, muss ich wissen, wie man die Zählungen für drei separate Tabellen in einer Abfrage erhält. –
Ich bevorzuge es, mein Java und mein SQL zu trennen, indem ich Abfragen in gespeicherte Prozeduren setze. Wenn Sie in der Lage sind, Ihr SQL direkt in der Datenbank arbeiten zu lassen, dann wäre es wahrscheinlich eine Strategie, die in einem gespeicherten Prozess läuft. – mba12