【问题标题】:Java Derby SQL JoinJava Derby SQL 连接
【发布时间】:2014-11-29 22:19:02
【问题描述】:

我有 3 张桌子:

应用-

ID (PK)
DEVELOPER
GENRE
DESCRIPTION
POPULARITY
COST

客户 -

ID (PK)
FIRSTNAME
SURNAME
ADDRESS
TOWN
POSTCODE
PROFESSION

CUSTOMER_PURCHASES -

TRANSACTION_ID (PK)
CUSTOMER_ID (FK)
APPLICATION_ID (FK)

我有一种方法可以让客户购买应用程序。该方法使用自动生成的 Transaction_ID + CUSTOMER_ID(由客户表提供)+ APPLICATION_ID(由应用程序表提供)填充表 CUSTOMER_PURCHASES。

我需要提供输出的 SQL 语句 -

Transaction ID: 501
Customer ID: 301
Name: Beatrice May
Application ID: 302
Application Cost: £1.00

我的 SQL 查询不起作用:

SELECT TRANSACTION_ID,
       CUSTOMER.ID,
       CUSTOMER_ID,
       FIRSTNAME, 
       SURNAME, 
       APPLICATION_ID, 
       APPLICATION.COST 
FROM CUSTOMER, CUSTOMER_PURCHASES,APPLICATION WHERE CUSTOMER.ID = CUSTOMER_PURCHASES.CUSTOMER_ID

谢谢

詹姆斯

【问题讨论】:

    标签: java sql database derby


    【解决方案1】:

    使用显式连接语法

    SELECT TRANSACTION_ID,
           CUSTOMER.ID,
           CONCAT(FIRSTNAME, ' ',  SURNAME) AS Name, 
           APPLICATION.ID, 
           APPLICATION.COST 
    FROM CUSTOMER
    JOIN CUSTOMER_PURCHASES
    ON CUSTOMER.ID = CUSTOMER_PURCHASES.CUSTOMER_ID
    JOIN APPLICATION 
    ON APPLICATION.ID = CUSTOMER_PURCHASES.APPLICATION_ID
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-01-27
      • 1970-01-01
      • 1970-01-01
      • 2016-03-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多