【发布时间】:2014-09-19 22:28:39
【问题描述】:
Derby 是否不允许您在另一个查询的返回关系上进行选择?
例如,这个查询可以正常工作:
SELECT *
FROM users, stats
WHERE users.uid = stats.uid;
但此查询返回错误:
SELECT username, hits
FROM (
SELECT *
FROM users, stats
WHERE users.uid = stats.uid
);
错误显示:
Error: Syntax error: Encountered "<EOF>" at line 1, column 83.
SQLState: 42X01
ErrorCode: 30000
我已经习惯了 Oracle,这很好用。
上面的查询只是一个例子,我知道我可以选择用户名,点击原本就不需要嵌套查询。
【问题讨论】:
-
不确定 derby 是否要求内联查询使用表别名,但您可能想尝试
SELECT username, hits FROM (SELECT * FROM users, stats WHERE users.uid = stats.uid) B;大多数 RDBMS 要求您使用内联查询别名。 -
您好,刚刚尝试过,它可以工作,除了您必须使用 AS 关键字来别名。非常感谢
-
注意:关于你的最后一个问题,我不是反对者。我不认为这是一个糟糕的问题,只是一个不成熟的问题。您在 Google 上找不到解决方案的原因很可能是因为您正在寻找整个问题的解决方案,而您却找不到。您仍然需要分步,而这样做并不需要 Swing 知识。然后,当您尝试解决每一个小步骤时,如果您失败了,您将能够找到 Google 或 StackOverflow 解决方案,或者失败了,发布更好更具体的问题。祝你好运!!
-
@HovercraftFullOfEels 酷,我认为这是一个公平的观点。我只是想出了一种方法来做到这一点,使用 jTextPane 和 setCaretPosition,只是启动一个线程,通过循环和更新插入符号位置然后在每个周期中延迟来对其进行动画处理。直到我到达文本的末尾,然后 setCaret 到顶部。我还没有尝试过,但我想它可能会奏效。感谢您的建议
标签: sql database select subquery derby