File APIs for Java Developers
Manipulate DOC, XLS, PPT, PDF and many others from your application.
http://aspose.com/file-tools
Win a copy of Clojure in Action this week in the Clojure forum!
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

MS SQL Query

 
Kalyani Nayak
Greenhorn
Posts: 25
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I want to invoke rows from a table in such a way that ,
suppose employeeAccess is my table i want to fetch all the records from employeeAccess table which
satisfy the following criteria as

if accessid = 1 then accessval = 'all'
<b>And</b>
if accessid = 2 then accessval = 'read'

I don't want to make the condition either or.

Suppose my table has some values like -

Empidaccessidaccessval
11all
12write
13read
14all

21all
22read
23write
24read

31read
32read
33write
34all

In the above case i only want to fetch the empid 2 . Neither 1 nor 3, as only
empid = 2 satisfy both condition that is for
empid = 2 when accessid = 1, accessval is 'all'
and when accessid = 2, accessval is 'read'
empid = 1 record is not expected, as in this case
when accessid = 1, accessval is 'all'
but when accessid = 2, accessval is something other than 'read'
empid = 3 record is also not expected, as in this case
when accessid = 2, accessval is 'read'
but when accessid = 1, accessval is something other than 'all'

Please, help me outof this.
Note: I can't change the table format.
 
Scott Selikoff
author
Saloon Keeper
Posts: 3895
16
Eclipse IDE Flex Google Web Toolkit
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
You could probably solve this using an inner join of the table on itself with the empid field as the join condition such as:

Keep in mind there might be a shortcut I'm missing (its monday morning) and if the employee table is very big, joining on itself might not lead to the best performance.
 
It is sorta covered in the JavaRanch Style Guide.
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic