【发布时间】:2014-08-02 23:28:01
【问题描述】:
我正在执行这个查询
SELECT COUNT(*) AS CONNECTIONS, SERVERS.NAME AS SERVER_NAME, USERS.USERNAME AS USER, CONECT_DATE AS CONNECTION_DATE
FROM CONECTIONS JOIN SERVERS ON(CONECTIONS.SERVERID = SERVERS.ID)
JOIN USERS ON (CONECTIONS.USERID = USERS.ID)
WHERE CONECTIONS.USERID = (SELECT ID FROM USERS
WHERE UPPER(USERNAME) = UPPER((SELECT USERNAME FROM USERS)))
AND CONECT_DATE BETWEEN '2010-06-11' AND '2019-06-11'
GROUP BY SERVERID, CONECT_DATE;
我试图从 db TABLE USERS 中的每个用户那里获取此查询,并创建一个子查询来选择每个人 'UPPER((SELECT USERNAME FROM USERS)))' 问题是返回的结果不止一行但如果我直接输入 USERNAME,例如“ADMIN”,它会给我结果。
【问题讨论】:
-
您确定您使用的是区分大小写的排序规则吗?而且(除了所有的拼写错误)这个查询的后半部分是胡言乱语。考虑与所需的结果集一起提供适当的 DDL(和/或 sqlfiddle)。