“以困难的方式学习sql”-练习13:嵌套的select语句有麻烦

塔斯迪克·拉曼(Tasdik Rahman)

我正在经历“艰苦学习SQL”,目前正在练习13。

我被困在我们必须要做的部分

编写一个查询,以查找所有2004年以后购买的宠物及其主人的所有名称。其关键是根据“ purchase_on”列将person_pet映射到宠物和父母。

我的桌子看起来像这样

sqlite> select * from person ; 
id          first_name  last_name   age         dead        phone_number  salary      dob       
----------  ----------  ----------  ----------  ----------  ------------  ----------  ----------
0           john        doe         20          0           9929          123123.0    2015-12-09
1           foo         bar         25          0           12            123123.0    2004-12-11
2           michal      jordan      19          0           12            123123.0    2005-12-11
3           tom         ford        30          0           12            123123.0    2002-12-11

sqlite> select * from pet ; 
id          name        breed       age         dead        dob         parent_id 
----------  ----------  ----------  ----------  ----------  ----------  ----------
0           fluffy      Unicorn     5           0           2012-02-01            
1           quora       social net  10          0           2010-02-01            
2           Goldie      German She  6           0           2009-02-01            
3           boxer       golden ret  3           0           2007-02-01            
4           naman       kutta       10          1           2011-02-01            
5           hari        ohk         7           0           2015-02-01


sqlite> select * from person_pet ; 
person_id   pet_id      purchased_on
----------  ----------  ------------
2           2           2002-03-30  
2           3           2001-04-30  
2           4           2005-04-30  
2           5           2003-04-30  
3           1           2006-04-30  
3           4           2005-04-30    

schema看起来像这样

sqlite> .schema
CREATE TABLE person(
 id INTEGER PRIMARY KEY, 
 first_name TEXT,
 last_name TEXT, 
 age INTEGER
, dead INTEGER, phone_number INTEGER, salary FLOAT, dob DATETIME);
CREATE TABLE pet(
 id INTEGER PRIMARY KEY, 
 name TEXT, 
 breed TEXT, 
 age INTEGER, 
 dead INTEGER
, dob DATETIME, parent_id INTEGER);
CREATE TABLE person_pet(
 person_id INTEGER, 
 pet_id INTEGER
, purchased_on DATETIME);
CREATE TABLE cars(
 id INTEGER PRIMARY KEY,
 car_name TEXT
);

我尝试过的

我能够得到person_idpet_id当年“2004”后,带来了与查询

sqlite> select person_id, pet_id, purchased_on from person_pet 
   ...> where purchased_on > "2004-01-01" ;
person_id   pet_id      purchased_on
----------  ----------  ------------
2           4           2005-04-30  
3           1           2006-04-30  
3           4           2005-04-30

我现在应该如何继续列出名字呢?

这是我第一次使用SQL,因此非常感谢您的帮助。被困了一段时间。

编辑

我知道这可以使用完成,joins但是直到练习13才涉及joins

正如@vkp在评论中所要求的那样,in到现在为止已经涵盖了。

CL。

要将ID替换为其关联的名称,可以使用相关的子查询

select (select first_name
        from person
        where id = person_pet.person_id),
       (select name
        from pet
        where id = person_pet.pet_id),
       purchased_on
from person_pet
where purchased_on >= '2005';

(当您需要从同一个表中获取多个列(例如,名字和姓氏)时,效率不如联接。)

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

学习Python困难方式练习21额外学分

来自分类Dev

学习Python困难方式练习40类查询

来自分类Dev

学习Python困难方式练习13(使用pycharm)-在控制台中执行脚本

来自分类Dev

学习python困难方式练习50无法访问此站点,本地主机拒绝

来自分类Dev

学习SQL的困难之道-继续使用sqlite3从.sql创建.db的麻烦

来自分类Dev

学习python困难的方式练习20我不明白它如何增加行号1、2、3

来自分类Dev

通过困难的方式学习Python ex 46

来自分类Dev

SQL基础知识练习select语句

来自分类Dev

SQL嵌套Select语句

来自分类Dev

sql-ex.ru select语句练习51

来自分类Dev

有困难的时间解决SQL注入PHP

来自分类Dev

在 sql server 中解析 xml 有困难

来自分类Dev

以艰苦的方式学习Python(练习20)运行时有奇怪的符号

来自分类Dev

SQL查询错误(嵌套的select语句)

来自分类Dev

在更新语句中具有select子查询的嵌套SQL查询

来自分类Dev

Python函数和变量-学习Python困难的方式ex19

来自分类Dev

带有嵌套选择的sql insert语句

来自分类Dev

困难的强化学习查询

来自分类Dev

Oracle SQL:Select语句中嵌套REPLACE()的替代方法?

来自分类Dev

如何在SQL中使用嵌套的SELECT语句?

来自分类Dev

ex19通过困难的方式学习c。错误:未声明“ MapProto”(此功能首次使用)

来自分类Dev

具有if逻辑的SQL select语句

来自分类Dev

具有if逻辑的SQL select语句

来自分类Dev

sql select语句有3个表?

来自分类Dev

SQL Select中带有set语句

来自分类Dev

带有计算的sql select语句

来自分类Dev

sql有麻烦

来自分类Dev

MySQL Select语句麻烦

来自分类Dev

艰苦学习Python练习35:无法理解它的连接方式

Related 相关文章

热门标签

归档