我需要一个帮助。我需要从使用MySQL的逗号分隔字符串中的多个id获取表中的值。我在下面解释我的表格和查询。
db_basic:
id special name
1 2,3,4,5 Raj
2 4,2,5,6 Rahul
3 3,5,6 Rocky
我的代码如下。
$special=2;
$qry=mysqli_query($connect,"select * from db_basic where special='".$special."'");
这里我需要在逗号分隔字符串中出现special=2
的位置,这些值将被提取。我只需要正确的查询。请帮我。
答案 0 :(得分:0)
如果你当前的代码被用来返回数据库的第一行和第二行,你可以在查询中使用LIKE
运算符,如下所示:
$special=2;
$qry=mysqli_query($connect,"select * from db_basic where special LIKE '%,".$special.",%'");
或LOCATE
喜欢:
$special=2;
$qry=mysqli_query($connect,"select * from db_basic where LOCATE(".$special.",special)>0");
和FIND_IN_SET
:来自docco here - “如果第一个参数包含逗号(”,“)字符,则此函数无法正常工作。
答案 1 :(得分:0)
使用以下查询
可以为你工作
使用LIKE代替" ="
"从db_basic中选择*,其中特别喜欢'%"。$ special。"%'"
答案 2 :(得分:0)
使用FIND_IN_SET函数。 select * from db_basic where FIND_IN_SET(2,special)
答案 3 :(得分:0)
尝试一次,
var webClient = new WebClient();
string boundary = "---------------------------" + DateTime.Now.Ticks.ToString("x", NumberFormatInfo.InvariantInfo);
webClient.Headers.Add("Content-Type", "multipart/form-data; boundary=" + boundary);
var fileData = webClient.Encoding.GetString(file);
var package = string.Format("--{0}\r\nContent-Disposition: form-data; name=\"file\"; filename=\"{1}\"\r\nContent-Type: {2}\r\n\r\n{3}\r\n--{0}--\r\n", boundary, filename, contentType, fileData);
var nfile = webClient.Encoding.GetBytes(package);
byte[] resp = webClient.UploadData(url, "POST", nfile);
它应该有用。