Retrieving 1 record from 2 tables with where syntax

By Bill Graziano on 5 September 2000 | Tags: SELECT


jan asks "i need to know if there is a reccord in any of the two tables which has the username and password provided by the form . . "

The full text of the question is "i have 2 tables

+---table1-----+
|id
|password
|username
+--------------+

+---table2-----+
|id
|password
|username
+--------------+
now i have a login page with 2 fields: password and username..
now i need to know if there is a reccord in any of the two tables which has the username and password provided by the form.
Further on i need to get the table from which it came and the id
the id is being stored inside an other database so the id's from the two tables are autonumberd like they would if it was one big table..

i cannot merge the two tables into one because of the differences in information being stored in them..

thanks in advance..
jan"


We discussed using a UNION in a query in an earlier article. We use that with a small variation here. First we'll create a view that will get us the union of the two tables.

CREATE VIEW vUsers AS
SELECT TableName = 'Table1',
id, password, username
FROM Table1
UNION
SELECT TableName = 'Table2',
id, password, username
FROM Table1


Notice that we used the field "TableName" to tell us which table each record is coming from. After that our select statement is pretty darn easy:

SELECT *
FROM vUsers
WHERE Username = 'user'
AND password = 'password'


That should tell you whether you have a matching user and which table it came from. You can also do this in one query by putting the where clause in both SELECTs in the UNION query. Either way.
-graz


Related Articles

Joining to the Next Sequential Row (2 April 2008)

Writing Outer Joins in T-SQL (11 February 2008)

How to Use GROUP BY with Distinct Aggregates and Derived tables (31 July 2007)

How to Use GROUP BY in SQL Server (30 July 2007)

SQL Server 2005: Using OVER() with Aggregate Functions (21 May 2007)

Server Side Paging using SQL Server 2005 (4 January 2007)

Using XQuery, New Large DataTypes, and More (9 May 2006)

Counting Parents and Children with Count Distinct (10 January 2006)

Other Recent Forum Posts

Troubleshooting Deadlocks in SQL Server (1d)

Last Login date and time (2d)

Negative effects of High VLF counts (2d)

Need to return a value that indicates that a record has been added, but not when a record is modified (3d)

Indexex on low cardinality fields (3d)

Error in stored procedure (4d)

Spam post flagging (4d)

Update Microsoft SQL Server (RTM) 12.0.2000.8 to latest v14 (12.0.6449.1) (4d)

- Advertisement -