2012-07-11 98 views
1

我没有SQL经验,但一直负责构建一份工作报告,我需要创建一个自定义sql来获取我们需要的工作。我不知道是否有人可以在不需要更多信息的情况下提供帮助,但我正在创建一份报告,显示我们发送的客户调查结果。我已经摸索周围,以结束:对新手的SQL帮助

SELECT SUR_response.WOPK, SUR_response.completed_YN, 
    SUR_response.ip_address, SUR_response.response_end_date, 
    SUR_response.response_start_date, SUR_Item.ITEM_TEXT, 
    SUR_item_answer.Answer_text, SUR_response_answer.answer_text 
FROM SUR_Item, SUR_response, SUR_Response_Answer, sur_item_answer 
JOIN: 
WHERE:SUR_Response_Answer.ITEM_ID=100 

我试图做SELECT *但我不想从FROM表中的所有列。

它已返回结果,但有很多问题,例如返回117页的条目时,应该只有1个页面,最多8个条目。它似乎只是一遍又一遍地重复它自己。其次,行不匹配或像他们应该关联。

我再次从头开始做这些事,除了知道表和列之间的区别之外,我不知道我在做什么。所以任何帮助或更好的方向点是非常感谢。

+0

如果您对SQL没有任何经验,可能会发现使用像[** SSMS **]这样的工具更容易(http://msdn.microsoft.com/zh-cn/library/ms174173.aspx )使用查询设计器UI来构建您的SQL。此外,您可以在线查找许多有用的教程,例如[** this one **](http://www.sqlcourse.com/index.html)以更好地理解SQL查询的基本概念。 – mellamokb 2012-07-11 16:06:01

+0

你使用了哪个数据库?语法真的很奇怪。 – 2012-07-11 16:06:42

+0

什么是您的数据库引擎(SQL Server,MySQL等)。另外,将各种表连接在一起的关键是什么。创建JOIN子句时这很重要。 – 2012-07-11 16:07:21

回答

0

您很可能错过了必要的连接。联接表明一个表中的字段如何引用另一个表中的另一个字段。如果不知道数据结构的细节,我们不能告诉你哪些连接丢失。

此链接介绍加入: http://www.w3schools.com/sql/sql_join.asp

+0

以及数据库引擎不知道,因为我正在使用一个名为'维护连接cmms程序。基本上我使用了我们记者的高级选项卡,这个选项卡给了我4个箱子,它们是FROM,JOIN,在哪里。我必须正确填写。我尝试过连接,但它从不显示任何结果,但从我所了解的键上看,它们是:Response_ID,Item_ID,Answer_ID – 2012-07-11 16:36:01

0

嗯,有没有很多去上,但这里的蓝图:

SELECT SUR_response.WOPK, SUR_response.completed_YN, 
     SUR_response.ip_address, SUR_response.response_end_date, 
     SUR_response.response_start_date, SUR_Item.ITEM_TEXT, 
     SUR_item_answer.Answer_text, SUR_response_answer.answer_text 
FROM SUR_Item 
JOIN SUR_response ON Sur_Item.Item_ID=SUR_response.Item_ID 
JOIN SUR_Response_Answer ON Sur_Item.Item_ID=SUR_Answer.Item_ID 
JOIN sur_item_answer ON Sur_Item.Item_ID=SUR_Answer.Item_ID 
WHERE SUR_Response_Answer.ITEM_ID=100 

如果它仍然给你额外的行,那么JOIN和/或需要调整ON声明以匹配正在连接的表和键。没有足够的信息来告诉我这些表是如何相互关联的。

+0

感谢您的尝试,它不起作用,因为它表示某些SELECT无法绑定 我唯一可以说与表格有关的事情是,第一列是来自工作订单#的'table1'。那么最后一列来自'表2'并且是用户留下的评论。关系是与所做工作相关的人进行的调查,并留下评论。我的结果如何不匹配作为注释将与错误的工作顺序在同一行。 – 2012-07-11 18:20:57