如何使用SQL LIKE ANY命令?<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />大家好。
我试图使用文本框中的输入来使用LIKE命令的SQL查询,但有多个条目。
从文本框中取出列表很容易,当我尝试使用LIKE和列表进行SQL查询时会出现问题。
id = {“R8D-304%”,“R8D-404%”,“R8D-515%”};
选择WHERE Serial LIKE ANY(????)
这是我遇到问题的地方。 我在搜索精确匹配列表时使用了Concait项目,但我需要找到任何近似匹配。
Re:如何使用SQL LIKE ANY命令?PMroz,第二个答案完美无缺!我不得不调整它以补偿列并不总是被命名为serial,具体取决于表,但查询正是我所需要的。
谢谢。
Re:如何使用SQL LIKE ANY命令?无法抗拒 - 你可以用CONCAT项目做到:
ID = { “R8D-304%” , “R8D-404%” , “R8D-515%” } ;
sql_statement = “SELECT WHERE serial LIKE'” || concat项目 ( ID , “'或连续LIKE'” ) || “'” ;
Re:如何使用SQL LIKE ANY命令?您不能将IN LIST与LIKE结合使用。 您可以构建一系列OR语句,如下所示:
ID = { “R8D-304%” , “R8D-404%” , “R8D-515%” } ;
对于 ( 一世 = 1 ,一世 <= NITEMS ( ID ) ,一世 ++,
one_item = ID [ 一世 ] ;
如果 ( 一世 == 1 ,
sql_statement = evalinsert ( “SELECT WHERE serial LIKE'^ one_item ^'” ) ;
,
sql_statement = evalinsert ( “^ sql_statement ^ OR serial LIKE'^ one_item ^'” ) ;
) ;
) ;
节目 ( sql_statement ) ;
sql_statement =“SELECT WHERE serial LIKE'R8D-304%'或serial LIKE'R8D-404%'或serial LIKE'R8D-515%'”;