开发者

SQL Server Query Problem?

开发者 https://www.devze.com 2023-01-20 09:48 出处:网络
I was using MySQL\'s concat_ws function to get data from MySQL database and it was working perfectly. I discover this query through this SO Question. Now I have same case but this time database is SQL

I was using MySQL's concat_ws function to get data from MySQL database and it was working perfectly. I discover this query through this SO Question. Now I have same case but this time database is SQL Server.

Asking again for SQL Server:

I have a table like this:

id | 开发者_如何转开发roll_no | name
---------------------
 1 |   111   | Naveed
 2 |   222   | Adil
 3 |   333   | Ali 

If I have data like this:

$fields = array( "id" , "roll_no" ) and $values = array( "1,111", "2,222" );

It means I have to write a sql query to get records from table where (id != 1 and roll_no != 111) and (id != 2 and roll_no != 222). It means 3rd record will be fetched.

I have data like this:

$fields = array( "id" ) and $values = array( "2", "3" );

It means I have to write a sql query to get records from table where (id != 2) and (id != 3). It means 1st record will be fetched.

How to write a general single query to get data from table using above two data arrays?

Thanks


Your question is unclear for me, but from the link you provided to the other SO question, and assuming you just want to adapt to SQL Server, I guess you could just replace

concat_ws (',', id, roll_no)

by

id + ',' + roll_no


It's a simple sql. Do you know 'where (not) in' clause?

Like for the first one if you have 1-to-1 relation between id and roll no, you can simple write

select * 
from table 
where id not in ('1','2') and roll_no not in ('111','222')

For the second it's easier.

0

精彩评论

暂无评论...
验证码 换一张
取 消