我正在尝试使用索引进行查询。
例如,我对给定的问题有多个答案。
每个答案都有唯一的ID,用于排序。
我会在Answers表上使用查询:
static int minimumNumber(int n, String password){
int arr[]=new int[n];
String A[]=new String[4];
String numbers = "0123456789";
String lower_case = "abcdefghijklmnopqrstuvwxyz";
String upper_case = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
String special_characters = "!@#$%^&*()-+";
A[0]=numbers;
A[1]=lower_case;
A[2]=upper_case;
A[3]=special_characters;
for(int i=0;i<n;i++){
for(int k=0;k<4;k++){
for(int j=0;j<A[k].length();j++){
if(password.charAt(i)==A[k].charAt(j)){
arr[i]=k;
}
}
}
}
int ano[]=new int[4];
ano[0]=0;
ano[1]=1;
ano[2]=2;
ano[3]=3;
for(int i=0;i<4;i++){
int a=0;
for(int j=0;j<n;j++){
if(ano[i]==arr[j]){
break;
}
else if(arr[i]!=ano[j]){
a++;
}
}
if(a==n){
password=password+A[i];
}
}
int n1=6-password.length();
if(n1>=2){
for(int i=0;i<n1;i++){
password=password+A[0].charAt(i);
}
}
int w=password.length()-n;
return w;
}
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int n = in.nextInt();
String password = in.next();
int answer = minimumNumber(n, password);
System.out.println(answer);
in.close();
}
将回复满足要求的行。 相反,我想比较什么是响应的索引与我得到的。 例如,索引为0,它将是第一个元素,并在其上返回布尔值。
这是查询将回复的内容:
1 2 3
我需要检查是否存在作为回复的数组元素。 例如索引为0的元素,其中id为1.
有可能吗?
答案 0 :(得分:0)
好的,所以我使用COUNT
来做,我从上一个回答中注意到了。
所以我要为索引添加+1,例如0,然后查询并检查响应是否比我得到的索引长:
SELECT CASE WHEN COUNT(*) >= 1 THEN 1 ELSE 0 END FROM apurer.Answers WHERE apurer.Answers.question_id = 2 ORDER BY apurer.Answers.answer_id ASC
。