Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/76.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 我刚开始学习SQL。我如何在这段代码中度过我的一年?_Mysql_Sql_Sql Server - Fatal编程技术网

Mysql 我刚开始学习SQL。我如何在这段代码中度过我的一年?

Mysql 我刚开始学习SQL。我如何在这段代码中度过我的一年?,mysql,sql,sql-server,Mysql,Sql,Sql Server,我是MySQL新手。我写了这段代码,但似乎不正确 select mm.adi, year(sb.tarih) as yil, Count(1) as satisSayisi from Marka mm, SatisBaslik sb, Model mo, Araba aa, SatisSatirları ss where mm.markaId = mo.markaId and mo.modelId = aa.modelId and aa.arab

我是MySQL新手。我写了这段代码,但似乎不正确

select mm.adi, year(sb.tarih) as yil, Count(1) as satisSayisi
from Marka mm,
     SatisBaslik sb,
     Model mo,
     Araba aa,
     SatisSatirları ss 
where mm.markaId = mo.markaId
  and mo.modelId = aa.modelId
  and aa.arabaId = ss.arabaId
  and ss.satısId = sb.satısId  
group by mm.adi, year(sb.tarih)   
如果我这样写,给错了


我想知道如何获取我的年份

您的FROM子句应该只有表名。从何处选择

OP试图返回的结果一点也不清楚。我猜OP只是想包含一个谓词条件,将行限制在特定的年份

大概是这样的:

SELECT mm.adi
     , YEAR(sb.tarih)   AS yil
     , COUNT(1)         AS satisSayisi 
  FROM Marka mm
  JOIN Model mo
    ON mo.markaId = mm.markaId
  JOIN Araba aa
    ON aa.modelId = mo.modelId
  JOIN SatisSatirlari ss
    ON ss.arabaId = aa.arabaId
  JOIN SatisBaslik sb
    ON sb.satisId = ss.satisId

 WHERE sb.tarih >= '2017-01-01'
   AND sb.tarih <  '2018-01-01'

 GROUP
    BY mm.adi
     , YEAR(sb.tarih)

但这只是一个猜测

你只给我们提供了一张桌子,如果你不告诉我们所有桌子的结构,我们就帮不了你them@RoseTyler我认为你需要了解更多关于MySQL的知识,OP想要实现什么还不清楚。在这个代码中获取我的年份。。。我们只能猜测OP想要达到什么结果。考虑到about和tarih='2017,OP可能希望包含一个谓词条件来限制返回的行。。。但这只是一个猜测。这个问题很令人困惑,用MySQL和SQL Server标记。@RoseTyler在评论部分请告诉我们您真正想要实现的目标。我们将编辑您今天的问题提示:切换到现代的显式连接语法。更易于编写而无错误,更易于读取和维护,并且在需要时更易于转换为外部联接。
SELECT mm.adi
     , YEAR(sb.tarih)   AS yil
     , COUNT(1)         AS satisSayisi 
  FROM Marka mm
  JOIN Model mo
    ON mo.markaId = mm.markaId
  JOIN Araba aa
    ON aa.modelId = mo.modelId
  JOIN SatisSatirlari ss
    ON ss.arabaId = aa.arabaId
  JOIN SatisBaslik sb
    ON sb.satisId = ss.satisId

 WHERE sb.tarih >= '2017-01-01'
   AND sb.tarih <  '2018-01-01'

 GROUP
    BY mm.adi
     , YEAR(sb.tarih)