正确的 HQL 查询?

Correct HQL query?

您好,这个 HQL 查询有什么问题吗?

SELECT m
FROM zakazka m
WHERE m.id =
(
    SELECT s.zakazka
    FROM smlouva s
    WHERE s.id =
    (
        SELECT z.ramcova_smlouva_na_jejimz_zaklade_je_zakazka_vytvorena
        FROM zakazka z
        WHERE z.id = 7880
    )
)

我认为您在第一个 SELECT 语句中缺少列名 (select m."something here")

您有任何例外情况可以附加吗?

这是一个原始的 SQL 查询,它应该实现与嵌套子查询相同的功能:

SELECT m
FROM zakazka m
INNER JOIN smlouva s
    ON m.id = s.zakazka
INNER JOIN zakazka z
    ON s.id = z.ramcova_smlouva_na_jejimz_zaklade_je_zakazka_vytvorena
WHERE z.id = 7880