我正在尝试检索显示给我卡片是否已发给玩家的数据。
我尝试了使用资源的这些网站来构造代码的不同方式
http://www.sqlservertutorial.net/sql-server-basics/sql-server-group-by/ https://docs.microsoft.com/en-us/sql/t-sql/queries/where-transact-sql?view=sql-server-ver15
但是我一直收到此错误消息
#1064-您的SQL语法有错误;检查与您的MariaDB服务器版本相对应的手册以使用正确的语法 靠近'((E_Subtype WHERE E_Type ='Card')GROUP BY E_From LIMIT 0,25' 在第二行
SELECT E_Type, E_Subtype FROM eventdataview
COUNT (E_Subtype WHERE E_Type = 'Card')
GROUP BY E_From;
我正在尝试从E_type和E_Subtype中获取数据,以表明已提供卡片。 如果已发出卡片,它将查看E_From以查看哪个玩家收到了卡片。
应该看起来像这样
E_From | E_Subtype
-----------|-----------
player 1 | Yellow Card
Player 2 | Red Card
答案 0 :(得分:0)
语法错误在->“ COUNT(E_Subtype WHERE E_Type ='Card')”。括号放在错误的位置,以及表名后添加的列数。
使用下面提到的@andrew作为查询 SELECT E_Type,E_Subtype,COUNT(E_Subtype)作为No_Of_Subtypes 从eventdataview WHERE E_Type ='卡片' GROUP BY E_From
答案 1 :(得分:0)
您的查询应如下所示:
SELECT E_Type, COUNT(*)
FROM eventdataview
WHERE E_Type = 'Card'
GROUP BY E_From;
注意:
SELECT
,FROM
,WHERE
,GROUP BY
。GROUP BY
键。WHERE
是整个查询的子句,而不是COUNT()
函数的子句。