sql - 日期函数的问题
问题描述
我是 SQL 的初学者,正在研究 SQLite。
当我在 Dates 旁边使用 between 或 >=/< 时,我的计算值的查询/子查询返回空值或根本没有值。我不认为这是语法错误,但也许我有某种冲突的条件?
预期结果是满足条件的值的计数,并且在列出的日期之间。条件还包括所选日期之间的聚合。
作为参考,我的日期值以 DD/MM/YYYY 格式插入,但即使我在查询中将 DD/MM/YYYY 与 YYYY/MM/DD 或 YYYY-MM-DD 交换,问题仍然存在。编辑:我的日期值的数据类型是“日期”,这实际上可能是一个问题,因为我认为我可能犯了一个语法错误,将行命名为与函数和数据类型相同?
SELECT COUNT (*) as "Number of Games",
CASE
WHen ftp > .968077144 then "Signifigantly Above League Average"
WHEN ftp > .884497663 then "Firmly Above League Average"
WHEN ftp > .800918182 then "Slighty Above League Average"
WHEN ftp > .717338701 then "Slightly Below League Average"
WHen ftp > .63375922 then "Firmly Below League Average"
when ftp > .565 then "Signifigantly Below League Average"
Else "Hack A Simmons"
End AS "Free Throw Percentage"
from BStats
Where GS = 1 and date BETWeen '17/10/2017' and '18/04/2018'
GROUP BY "Free Throw Percentage"
HAVING ast >= (SELECT avg(ast) from BStats where GS = 1 and date BETWEEN '17/10/2017' and '18/04/2018');
修改后的代码:我将 Dates 的列名更改为 playdate 以解决任何保留名称问题。我还从 between 函数切换到 >= 和 >。我应该将日期的数据类型更改为其他类型吗?我仍然收到空回复。谢谢您的帮助!
SELECT COUNT (*) as "Number of Games",
CASE
WHen ftp > .968077144 then "Signifigantly Above League Average"
WHEN ftp > .884497663 then "Firmly Above League Average"
WHEN ftp > .800918182 then "Slighty Above League Average"
WHEN ftp > .717338701 then "Slightly Below League Average"
WHen ftp > .63375922 then "Firmly Below League Average"
when ftp > .565 then "Signifigantly Below League Average"
Else "Hack A Simmons"
End AS "Free Throw Percentage"
from BStats
Where GS = 1 and playdate >= '2017-10-17' and playdate < '2018-04-18'
GROUP BY "Free Throw Percentage"
HAVING ast >= (SELECT avg(ast) from BStats where GS = 1 and playdate >= '2017-10-17' and playdate < '2018-04-18');
解决方案
这实际上取决于您的“日期”列的数据类型。另外,您的专栏名称是“日期”吗?它是 SQL 中的保留字,因此也可能会造成一些问题。如果给您带来麻烦,请尝试将其括在括号中。
推荐阅读
- powershell - Start-Process -WindowStyle Maximized 不会最大化窗口
- java - 在java中按升序对数组进行排序
- assembly - 更改地址在堆栈中的变量
- python - NoReverseMatch 在 /blog/2018/
- python - 如何将我的数据框中的两列添加到 np.array
- javascript - 如何使用 Javascript 将我的 Json 翻译成 HTML?
- html - 移动设备上的网页视图 - 只有上半部分正确显示?
- amazon-web-services - Webpack 4 + Jest + Babel 7 (+AWS Lambda):测试在本地通过,部署到 AWS Lambda 时出错
- javascript - 如何使 videogular2 HLS 在 IOS 上工作?
- php - 将 unicode 特殊字符转换为 UTF-8