【发布时间】:2015-04-09 20:55:56
【问题描述】:
String sql = "
SELECT NAME,
SURNAME,
ORDERID,
CUSTOMERID,
PRIORITY,
STATUS,
DATE,
TIME
FROM ORDERS O
WHERE O.CUSTOMERID IN "
+ "(SELECT LOGGEDIN
FROM CUSTOMERS
WHERE LOGGEDIN=1)";
我有两张表,一张称为客户,一张称为订单。在我的客户表中,我想检索所有当前登录到系统的人,然后将其与我的订单表相匹配,以查看他们当前是否还有待处理的订单。这两个表都包含一个 customerid 列,其中包含相同的值。但是,我不确定如何在一个语句中使用和执行登录检查。以上是我所做的尝试之一,目前不正确,因为它需要为客户 ID 添加连接,但我不确定由谁执行此操作。另外,我使用的 sql 驱动程序是 Apache Derby,以防有人想知道
【问题讨论】:
-
这不行吗?这是什么数据库?
-
@BAReese 在 jdbc 中使用 derby 驱动程序。当我运行这个查询时,它给了我这个错误:java.sql.SQLSyntaxErrorException: Syntax error: Encountered "FROM" at line 1, column 127。
-
是的,听起来可能是多余的逗号。 “FROM”不是一列,即使是数据库也不知道下一步该做什么。