sql - 创建动态选择案例 (vb)

标签 sql vb.net select-case

我希望我的一个案例是动态字符串,因为在我的表中,除了开始代码“2061”之外,这些值部分发生了变化 那么如何让我的代码执行类似于我在查询中查找时的操作 “...比如‘2061%’ 这是我的代码

Function GetResponse(val As String) As String
        Select Case val
            Case "2061"
                Return "Opted Out"
            Case "00"
                Return ""
            Case Else
                Return "Other"
        End Select
    End Function

最佳答案

您可以使用Like VB.NET 中的运算符用于此目的。在这里,我选择第一个与 True 匹配的案例。

Function GetResponse(val As String) As String
    Select Case True
        Case val Like "2061*"
            Return "Opted Out"
        Case val = "00"
            Return ""
        Case Else
            Return "Other"
    End Select
End Function

在 C# 中,您可以使用 if 语句来获得相同的功能:

string GetResponse(string value)
{
    if (value.StartsWith("2061"))
        return "Opted Out";
    else if (value == "00")
        return "";
    else
        return "Other";
}

在 F# 中:

let GetResponse (value:string) =
    match value with
    | x when x.StartsWith("2061") -> "Opted Out"
    | "00" -> ""
    | _ -> "Other"

注意,我建议使用比这更具描述性的函数和变量名称,但我不知道这段代码所处的上下文。“GetResponse”含糊不清,并且不指示返回值可能意味着什么。您可能想将其重命名为“GetUserOptedOutStatus”或类似名称。

关于sql - 创建动态选择案例 (vb),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13158456/

相关文章:

vb.net - 休眠VB.NET

mysql - 在一条语句中使用多个 SQL 查询

vba - 选择大小写 不 或

VB.net Select Case 语句与 Beginswith

java - 如何关闭().executeUpdate?

vb.net - 从字符串中删除多余的空格

sql - MySQL选择使用日期时间,仅按日期分组

vba - 选择案例循环

mysql - 将带有时间戳的多行合并为带有开始和结束时间戳的一行

java - 如何在 SPRING REST API 中使用 SQL 查询处理 "ALL"?