用户输入查询
User Input Query
我在使用此查询时遇到了一些问题。
我正在尝试创建一个查询,用户可以在其中输入运行时的 2 个日期。它要求我输入开始日期和结束日期,但是,它随后得出:ORA-00904: "JAN": invalid identifier
我的查询目前是:
SELECT p.FirstName, p.email, a.Avatar_Name, s.Species_Name, a.Avatar_Level, a.Skill, s.Wisdom_Level, a.AvA_DOB, a.Hoard
FROM Players P, Avatars A, Species S
WHERE a.Player_ID = p.Player_ID
AND a.Species_ID = s.Species_ID
AND Avatar_Level = 'Master'
AND AvA_DOB BETWEEN &startdate AND &enddate
ORDER BY Hoard DESC;
我希望用户能够找到用户输入的两个日期之间的头像列表。
有什么帮助吗?如果需要更多信息,请询问! (:
(SQL 加上)
SQL 中的日期值需要用单引号引起来。 Oracle 会将这些字符串转换为日期数据类型,但使用具有预期格式掩码的显式转换更安全。
SELECT p.FirstName, p.email, a.Avatar_Name, s.Species_Name, a.Avatar_Level, a.Skill, s.Wisdom_Level, a.AvA_DOB, a.Hoard
FROM Players P, Avatars A, Species S
WHERE a.Player_ID = p.Player_ID
AND a.Species_ID = s.Species_ID
AND Avatar_Level = 'Master'
AND AvA_DOB BETWEEN to_date('&startdate', 'dd-mmm-yyyy')
AND to_date('&enddate', 'dd-mmm-yyyy')
ORDER BY Hoard DESC;
我在使用此查询时遇到了一些问题。
我正在尝试创建一个查询,用户可以在其中输入运行时的 2 个日期。它要求我输入开始日期和结束日期,但是,它随后得出:ORA-00904: "JAN": invalid identifier
我的查询目前是:
SELECT p.FirstName, p.email, a.Avatar_Name, s.Species_Name, a.Avatar_Level, a.Skill, s.Wisdom_Level, a.AvA_DOB, a.Hoard
FROM Players P, Avatars A, Species S
WHERE a.Player_ID = p.Player_ID
AND a.Species_ID = s.Species_ID
AND Avatar_Level = 'Master'
AND AvA_DOB BETWEEN &startdate AND &enddate
ORDER BY Hoard DESC;
我希望用户能够找到用户输入的两个日期之间的头像列表。 有什么帮助吗?如果需要更多信息,请询问! (: (SQL 加上)
SQL 中的日期值需要用单引号引起来。 Oracle 会将这些字符串转换为日期数据类型,但使用具有预期格式掩码的显式转换更安全。
SELECT p.FirstName, p.email, a.Avatar_Name, s.Species_Name, a.Avatar_Level, a.Skill, s.Wisdom_Level, a.AvA_DOB, a.Hoard
FROM Players P, Avatars A, Species S
WHERE a.Player_ID = p.Player_ID
AND a.Species_ID = s.Species_ID
AND Avatar_Level = 'Master'
AND AvA_DOB BETWEEN to_date('&startdate', 'dd-mmm-yyyy')
AND to_date('&enddate', 'dd-mmm-yyyy')
ORDER BY Hoard DESC;