Inner Join Between 2 Queries Through Query Designer
Jul 24, 2015
I have recently started working on Sql server management studio. I have been using MS access in the past. To link results of 2 queries in MS access I would open the query wizard and it would show me the list of saved queries and then I could join them as regular tables. Im trying to look for this option in management studio. When I open query designer in management studio I am only given the option to add existing tables, how can I add existing queries?
Can you give the equivalent query for the following Oracle query :
SELECT col2, col3 FROM submission, lkup so WHERE so.txt (+) = TRIM(col2) ANDso.pid (+) = 'SO' ANDso.cde (+) = 'RW'
In the above query a constant value is used in JOIN, so I am not aware of how to use the JOIN clause for the above constant value ( 'SO' , 'RW' )
Upto my knowledge about JOIN query equivalents :
Oracle query :-
select *from test1 a, test2 b where a.sno(+) = b.col
Equivalent SQL Server query :-
select *from test1 a JOIN test2 b on a.sno = b.col
Hope the above is correct. Here my doubt is, if in the above query, b.col is replaced by a constant value say 'abcd' , then what will be the table name used in right of the JOIN clause. Or any other equivalent for this is available ?
Eg :-
Oracle query :-
select *from test1 a, test2 b where a.sno(+) = 'abcd'
Can you give the equivalent query for the following Oracle query :
SELECT col2, col3 FROM submission, lkup so WHERE so.txt (+) = TRIM(col2) AND so.pid (+) = 'SO' AND so.cde (+) = 'RW'
In the above query a constant value is used in JOIN, so I am not aware of how to use the JOIN clause for the above constant value ( 'SO' , 'RW' )
Upto my knowledge about JOIN query equivalents :
Oracle query :-
select *from test1 a, test2 b where a.sno(+) = b.col
Equivalent SQL Server query :-
select *from test1 a RIGHT JOIN test2 b on a.sno = b.col
Hope the above is correct. Here my doubt is, if in the above query, b.col is replaced by a constant value say 'abcd' , then what will be the table name used in right of the JOIN clause. Or any other equivalent for this is available ?
Eg :-
Oracle query :-
select *from test1 a, test2 b where a.sno(+) = 'abcd'
I am wondering if it is possible to return the result of 2 different queries as one. Similarly, like using UNION in SQL. I looked into the MDX UNION but it works on sets.
Basically, I have 2 queries; one with territory sales and one with region sales. I would like to return the results of all the territories followed by the sales of the region in one go.
I am trying to run queries against any of the user tables in my MS SQL 7.0 database. I get a message the Query Designer encountered a query error. We have tried rebooting the SQL Server and I am still getting these messages. Also, the SQL error logs look fine - all database maintenance are running successfully including the DBCCs which show no errors. Any help would be greatly appreciated as we are to go into production in a few days.
I get a wo_ID and want to query company data. I have the following tables, work_orders (has wo_ID, wo_name and install_id), install_ids (has install_id, comp_id) and customers (comp_id, company_name). The query process goes like this: I get a wo_ID and I need to find the install_id that corresponds with that wo_ID in that same work_orders table. Then take that install_id and find out the comp_id that corresponds with that install_id from the install_ids table. Finally take that customer_id and link it to comp_id in the customers table to find out company data. I need to join it multiple times to get my final data. I have a simple one that works right now with one join and using the install_id, but I don't know how to expand it with multiple joins. Thanks.
I have a page that will require several hundred update queries to be sent to the database. How much of a performance increase will i get by joining them all into one statement and sending them as a batch instead of running them one by one?
I am having a problem with a query,I am not sure if i would use a join or a subquery to complete thisproblem.I have two queries, and i need to divide one by the other, but i cantseem to get anytype of join to work with them.Here is the situation.I have a projectDB table that has a list of different projects foreach employee to work on.Each project has an employee assigned to it.The start date is null until the employee starts to work on it.I want to find how many percent of all their projects that eachemployee is working on.In other words:I want to divide query A by query B to see how many percent ofprojects each employee is working on.Query A count of projects that are being worked because they have adate per employee:SELECT employee, COUNT(employee) AS cntFROM projectDBGROUP BY employee, project_start_dateHAVING (NOT (project_start_date IS NULL)) //notice the NOTQuery B: Total amount of project per employee:SELECT employee, COUNT(employee) AS cntFROM projectDBGROUP BY employee, project_start_dateAny ideas?
hi thereanyone had an idea to join following 2 queries to 1????----- QUERY 1 ---------------------------------------------SELECT TMS_CaseF_2.Name AS TCDomain_0,TMS_CaseF_3.Name AS TCDomain_1,TMS.CaseF.Name AS TCFolder_2,TMS_CaseF_1.Name AS TCFolder_3,TMS.TestCase.Name AS TCName_4,TMS_TestCase_1.Name AS TCName_5,TMS.LogFolder.Name AS PlannedLogFolder_6,TMS.Log.Name AS PlannedLog_7,TMS.CaseResult.RecordedCaseName AS TCRecordedName_8,TMS.TestPlan.Name AS Plan_9FROM((((((((((TMS.Build INNER JOIN TMS.LogFolder ON TMS.Build.UID =TMS.LogFolder.Build)INNER JOIN TMS.Log ON TMS.LogFolder.UID = TMS.Log.LogFolder)INNER JOIN TMS.CaseResult ON TMS.Log.UID = TMS.CaseResult.Log)INNER JOIN TMS.TestCase ON TMS.CaseResult.TestCase =TMS.TestCase.UID)LEFT JOIN TMS.CaseF ON TMS.TestCase.Parent = TMS.CaseF.UID)LEFT JOIN TMS.TestCase AS TMS_TestCase_1 ON TMS.TestCase.Parent =TMS_TestCase_1.UID)LEFT JOIN TMS.CaseF AS TMS_CaseF_1 ON TMS_TestCase_1.Parent =TMS_CaseF_1.UID)LEFT JOIN TMS.CaseF AS TMS_CaseF_2 ON TMS_CaseF_1.Parent =TMS_CaseF_2.UID)LEFT JOIN TMS.CaseF AS TMS_CaseF_3 ON TMS.CaseF.Parent =TMS_CaseF_3.UID)INNER JOIN TMS.TestPlan ON TMS.TestCase.TestPlan = TMS.TestPlan.UID)WHERE (((TMS.LogFolder.Name) Like 'TR1%')AND ((TMS.Build.Name)='Planning_VD10A'))ORDER BY TMS.CaseF.Name,TMS_CaseF_1.Name,TMS.TestCase.Name,TMS_TestCase_1.Name;------------------------------------------------------------------ QUERY 2 ---------------------------------------------SELECT TMS.CaseResult.RecordedCaseNameFROM ((TMS.Build INNER JOIN TMS.LogFolder ON TMS.Build.UID =TMS.LogFolder.Build)INNER JOIN TMS.Log ON TMS.LogFolder.UID = TMS.Log.LogFolder)INNER JOIN TMS.CaseResult ON TMS.Log.UID = TMS.CaseResult.LogWHERE (((TMS.LogFolder.Name) Like 'VD%')AND ((TMS.Build.Name)='VD10A IT_APP'));
I have been using T-SQL for a while now although the majority of my work required relativley simple queries. I just need to know is there a way to JOIN the results of several SELECT queries, maybe through the use of functions??
A reference to any online article would be most helpful.
Good morning! Or good "whatever daytime you read this"!
SQL Server 2005 has this nice new feature Common table expression or CTE, which allows quite easy to define a "drill down" in recursive self join tables.
By recursive self join tables I mean this common example: idPerson INT <--------| idReportsTo INT ---------| PersonName VARCHAR
A CTE to "go down" the tree from any entry point and find all subs to a parent entry is well documented. I managed to make myself a CTE and use it a lot!
What I find myself needing too often is: a) Look up from a deep position and find the entry that is for example 3 steps above my reference in the branch b) Look up from a deep position and find the one that is 2nd or 3rd level (absolute) from top of the tree in the branch
I did try quite some versions, but I cannot get it to work. Any idea how you do the "drill up" with a CTE or another SQL solution. Of course performance is always needed, so I'd like to avoid the cursors I got it working with and use now. (It is not working good I admit...)
Sql2005 64 bit edition standard edition servers Sql2000 Sp3 enterprise edition servers
when we try to access a table in sql2000 from sql2005 using linked server, the query also uses inner joins and max()
it gives the follwoing error
"Msg 8180, Level 16, State 1, Line 1 Statement(s) could not be prepared. Msg 207, Level 16, State 3, Line 1 Invalid column name 'Col1017'."
The query looks something like this
select *FROM [X.X.X.X.].HRDE.dbo.PS_HX_LVE_FRM_SRCH A, [X.X.X.X.].HRDE.dbo.PS_NAMES B WHERE A.EMPLID = B.EMPLID AND A.HX_LEAVE_STATUS = 'PND' AND B.EFFDT IN (SELECT MAX(EFFDT) FROM [X.X.X.X.].HRDE.dbo.PS_NAMES WHERE EMPLID = A.EMPLID)
Country Category Internet Sales Amount Internet Order Count
[code]....
I need to perform a SQL kind of Cross join to get the Total Count as a column along side as there are .net code and json structures defined that expects output in a certain format.
SELECT EventID, Role, EventDuty, Qty, StartTime, EndTime, Hours FROM dbo.tblEventStaffRequired;
and SELECT EventID, Role, StartTime, EndTime, Hours, COUNT(ID) AS Booked FROM tblStaffBookings GROUP BY EventID, Role, StartTime, EndTime, Hours;
How can I join the results of the two by matching the columns EventID, Role, StartTime and EndTime in the two and have the following columns in output EventID, Role, EventDuty, Qty, StartTime, EndTime, Hours and Booked?
I know I can do a JOIN(parameter, "some seperator") and it will build me a list/string of all the values in the multiselect parameter.
However, I want to do the same thing with all the occurances of a field in my result set (each row being an occurance).
For example say I have a form that is being printed which will pull in all the medications a patient is currently listed as having perscriptions for. I want to return all those values (say 8) and display them on a single line (or wrap onto additional lines as needed).
Something like: List of current perscriptions: Allegra, Allegra-D, Clariton, Nasalcort, Sudafed, Zantac
How can I accomplish this?
I was playing with the list box, but that only lets me repeat on a new line, I couldn't find any way to get it to repeate side by side (repeat left to right instead of top to bottom). I played with the orientation options, but that really just lets me adjust how multiple columns are displayed as best I can tell.
Could a custom function of some sort be written to take all the values and spit them out one by one into a comma seperated string?
Does any one know of a way that a group of my developers can use this without giving them access to the rest of Enterprise manager?
Want to give them access to write queries and they are all Access developers so that I have to do as little training as possible then letting them have Query designer would keep them in their nice little world without hassing me to much.
When i'm trying to open the table say return all rows in Enterprize manger it gives me an error saying Query Designer encountered a query error Unspecified Error. I could not figure out what's goin on...
I appriciate if any one can help me out solving with this problem.
I use the Report Wizard to generate reports. Within the "Design the Query" screen, I try the query statement as : exec mydb.dbo.rptSales @fortheyear It shows me an error: Implicit conversion from data type sql_variant to smallint is not allowed. Use the CONVERT function to run this query.
The stored procedure of rptSales is CREATE PROCEDURE dbo.rptSales @pyear smallint=null AS .......
The rptSales has been tested OK on SQL Server Management Studio.
Actually, I have other similiar stored procedures using smallint as a parameter, and I can use the Report Wizard to generate reports, except the above one.
I have an intermittent issue where some remote PC's occasionally fail to execute select queries that have a join or return multiple result sets, however simple one table select queries continue to work okay. When it does happen the PC's needs to be rebooted to get to work again. This may only happen some PC's while others continue to work away okay.
I am using a VB6 application and ADO to connect to the database and the error message I get is a General Network Error, Server Not Found when it fails to execute the query. I have ran SQL Profiler on the server and while simple select queries continue to run away okay, a query a join does not even seem to show up in the profiler. The program has been working fine for 15 years with 1000's of users and has only now become an issue on one site for a number of users. Have tried moving the database to a different server and swapping network cards on the local PC's but can't seem to find the cause. The processor and the memory don't seem to be under load, but I am not sure if there is something else in SQL that is causing it to hang under certain conditions.
There have been network analysts experts in to run scans on the network, but I have not had the results of this back yet. Other applications do not seem to be affected so if this analysis does not show up anything.
I've got SQL Server 7.0 SP1 installed (in a NT4 SP6 environment).
Recently, it came up with error whenever I try to open a table or a view (return all rows) inside the Enterprise Manager. The descriptive (NOT!) error message is like this:
"The query cannot be executed because some files are either missing or not registered", and on pressing "help", the help files report "Query Designer cannot locate your query files and cannot run your query"
I have tried re-booting the machine and upgrading mmc.exe to version 1.2 (from 1.1), but both in vain.
Checked out BOL on this issue, but not enough info received to troubleshoot. Hoping someone out there has some input.
This issue is only happening on the server side not the client. Also, it suddenly appeared on three different machines.
Query Designer: "An unexpected error happened during this operation" [Query} - Query Designer encountered a Query error: Unspecified error.
The how: In a database, go to tables and select a table known to have data right click on mouse and select Open Table, return all rows. This is when the error appears.
BOL states the the file may be corrupt or from a non-supported version of SQL Server EM. Nothing was installed on these servers and we're still on SP2. This error just all of a sudden appeared and spread to 3 different machines...
Another issue is the Return to Top function is disabled. This function provides the maximum number of rows to fetch.
When I try to Return All Records in a table, I receive the error "Query Designer encountered a query error: unspecified error." I can successfully view the design of the table just not the records themselves. This is happening in all of my tables in all dbases.
My database has just recentrly been upgraded to SQL 2005 and i have noticed a change in the interface when writing a query in "Query Designer"
For one of our tables we have a 'Time' field. I know that time only doesnt exist yet and upon insertion a default date of 30/12/1899 is automatically inserted. Im happy with that!
My concern is with Query Designer. If i build a query using the criteria grid and for the time field i filer on >=13:00:00 (example), the SQL that it creates looks like this:
As you can see is automatically inserts the current date instead of 30/12/1899. This obviously causes my sql to not work unless i manually change the date in the SQL to 1899-12-30
In SQL 2000 i did not have to do this, it would automatically write the SQL as :
I am having a problem with what appears to be a very trivial task in the graphical query designer. When I enter =@County into the filter column quotes are automatically added like = '@County' which the makes the query string inaccurate (looking for a literal County = "@County" in the where clause).
I am using Studio 2005 and SQL Server 2005 with the newest service packs and retreiving data from an Oracle 10G database.
If I remove the quotes and run the query through the generic query designer in my SQL reporting project I get the error "ORA-00936: missing expression".
It is as if the SQL Reporting Project does not understand the meaning of the @ symbol for entering a parameter.
What am I missing here? I thought @ specified that this would be a parameter and you then just needed to supply the values for the parameter.
Iam trying to see the rows using e/m i.e by right clicking tables and choosing return all rows option but it gives me an error but if i chose the other options(i.e. design table etc) it works well.only that return rows option in all the databases doesn't work.
Again iam able to retrieve rows from query analyzer.
The error which it gives is:
An unexpected error happened during the operation.
[Query]-Query Designer encountered a Query error:Unspecified error.
Please if anyone knows the solution mail it to l_muthu@hotmail.com
I have lost the ability to query any table in my database using the Query Designer/table viewer in Enterprise Manager. I get the following error: Query Designer has encountered an error. Unspecified error.
I can still query the table from SQL Query Analyzer and the client front end. Has anyone seen this problem before?
Clicking Query, Dsign Query in Editor opens a Query designer in a model window that does not use the query tool bar. Oening a New Query pane does not enable it.
The nly way I have found to activate the query tool bar is to:
1. Right click a table then click open table. 2. Stop retreving data. (if it is a large table)
Now the Query Designer toolbar is enabled.
What is the correct way to enable the Query Designer toolbar?