返回空集的Mysql

返回空集的Mysql,mysql,Mysql,上面的查询在mysql中返回空集,但数据存在。如何排除故障 请帮忙。。。 提前感谢….不要在表数据库周围使用单引号,列名使用反勾号 试试这个: select ag.name, aa.name, al.object_id, u.name, al.performed_by, al.datetime, aa1.name, et.name, ald.name, ald.value from 'db'.'table1' al, 'db'.'table2' ald, 'db'.

上面的查询在mysql中返回空集,但数据存在。如何排除故障

请帮忙。。。
提前感谢….

不要在表数据库周围使用单引号,列名使用反勾号

试试这个:

select 
    ag.name, aa.name, al.object_id, u.name, al.performed_by, al.datetime, 
    aa1.name, et.name, ald.name, ald.value
from 
    'db'.'table1' al, 'db'.'table2' ald, 'db'.'table3' ag, 
    'db'.'table4' aa, 'db'.'table5' aa1, 'db'.'table6' et, 
    'db'.'table7' u
where 
    al.id = ald.log_id 
    and al.datetime > DATE_SUB(sysdate(). INTERVAL 90 DAY) 
    and al.group_id = ag.id 
    and ag.name = 'User' 
    and al.action_id = aa1.id 
    and al.object_id = u.user_id 
    and ald.type_id = et.id;
用joins试试这个

     from 
`db`.`table1` al, `db`.`table2` ald, `db`.`table3` ag, 
`db`.`table4` aa, `db`.`table5` aa1, `db`.`table6` et, 
`db`.`table7` u 

第一个建议:使用
JOIN
s而不是
WHERE
条件;它使您的查询更清晰,更易于调试。与表4 aa没有关系?谢谢您的回复,我尝试了反勾号,然后它又返回了空集。下面是我的参考。从
db
表1al、
db
表2ald、
db
表3ag、
db
表4aa、
db
表5aa1、
db
表6et、
db
表7u返回空。从
db
table1
al,
db
table2
ald
db
table3
ag,
db
table4
aa
db
table5
aa1,
db
table6
db
table7
u
其中****和ag.name='User'****在'where子句'中以未知列'User'的形式返回错误再次感谢您。感谢您的帮助。我尝试了很多方法,包括连接和打开,正在返回空集。查看我的
日期子项(sysdate(),间隔90天)
It's with comma not point正如您在查询中所做的那样这可以与where子句一起使用。请尝试使用此
和ag.name='user'
。请注意小u而不是u。@user2668829您欢迎!:)。请确保接受已解决的答案,以帮助他人。
    select 
ag.name, aa.name, al.object_id, u.name, al.performed_by, al.datetime, 
aa1.name, et.name, ald.name, ald.value
from 
`db`.`table1` al  
Inner join `db`.`table2` ald On al.id = ald.log_id 
Inner join  `db`.`table3` ag On  al.group_id = ag.id
Inner join  `db`.`table4` aa On  """""the condition of relation with this table""""
Inner join  `db`.`table5` aa1 On al.action_id = aa1.id
Inner join  `db`.`table6` et On  ald.type_id = et.id
Inner join `db`.`table7` u  On al.object_id = u.user_id 
where 
  al.datetime > DATE_SUB(sysdate(), INTERVAL 90 DAY) 
  and ag.name = 'User'