【发布时间】:2018-11-22 13:10:24
【问题描述】:
我想使用 sql 查询来显示“佛罗里达”大学的“学费”和“费用”。
我使用下面的代码首先查询学费,然后结合第二次查询费用。但是,我没有得到预期的结果。
想要的结果如下:
> School | Tuition | Fees
> --------------------------------------------
> School 1 | 2000 | 50
> School 2 | 1000 | 80
但我得到以下结果:
> School | Tuition | Fees
> --------------------------------------------
> School 1 | 2000 | 50
> School 1 | 1000 | 50
> School 2 | 2000 | 80
> School 2 | 1000 | 80
我对 WordPress 数据库使用了以下查询。 “tuition”和“fees”的所有值都包含在名为“entity_field_number”的表中。这些值位于名为“value”的列中。学杂费由名为“field_name”的列区分。 “entity_id”是分配给学校的ID号。
表“entity_field_number”
> entity_id | field_name | value
> --------------------------------------------
> 1 | tuition | 2000
> 2 | tuition | 1000
> 1 | fees | 50
> 2 | fees | 80
以下是我使用的查询。
SELECT *
FROM
(SELECT field_number.`value` as tuition,
posts.`post_title` as school
FROM field_number
INNER JOIN posts
ON posts.`post_type` = 'school_dir'
AND field_number.`entity_id` = posts.`ID`
INNER JOIN field_location
ON field_location.`province` LIKE '%florida%'
AND posts.`ID` = field_location.`entity_id`
AND field_number.`field_name` = 'tuition') tuition,
(SELECT field_number.`value` as fees,
posts.`post_title` as school
FROM field_number
INNER JOIN posts
ON posts.`post_type` = 'school_dir'
AND field_number.`entity_id` = posts.`ID`
INNER JOIN field_location
ON field_location.`province` LIKE '%florida%'
AND posts.`ID` = field_location.`entity_id`
AND field_number.`field_name` = 'fees') fees
【问题讨论】:
-
MySQL SQLite。您使用的是哪个 RDBMS?
-
你没有得到那个结果,你得到了四列......