标签: case

如何在Java中反转String的大小写?

我想更改一个字符串,以便所有大写字符变为小写,并且所有小写字符变为大写.数字字符只是被忽略.

所以"AbCdE123"成为"aBcDe123"

我想必须有一种方法来遍历String并翻转每个字符,或者可能是一些可以做到的正则表达式.

java string case case-sensitive

13
推荐指数
2
解决办法
2万
查看次数

在where子句的T-SQL中使用CASE?

我试图用case来改变我在where子句中检查的值,但是我得到了错误:

关键字'CASE'附近的语法不正确

SQL Server 2005

select * 
from   table
where  ((CASE when adsl_order_id like '95037%'
         then select '000000'+substring(adsl_order_id,6,6)
         ELSE select adsl_order_id
       END)
       not in (select mwebID from tmp_csv_dawis_bruger0105)
Run Code Online (Sandbox Code Playgroud)

t-sql case where-clause

13
推荐指数
2
解决办法
5万
查看次数

erlang如何处理与尾递归混合的case语句

假设我在这里有这个代码:

do_recv_loop(State) ->
    receive
    {do,Stuff} ->
        case Stuff of
        one_thing -> 
            do_one_thing(),
            do_recv_loop(State);
        another_thing ->
            do_another_thing(),
            do_recv_loop(State);
        _ ->
            im_dead_now
        end
    {die} -> im_dead_now;
    _ -> do_recv_loop(State)
    end.
Run Code Online (Sandbox Code Playgroud)

现在,理论上这是尾递归的,因为对do_recv_loop的三次调用都不需要返回任何内容.但是,erlang会认识到这是尾递归并适当优化吗?我担心嵌套结构可能使它无法识别它.

erlang recursion case tail

13
推荐指数
1
解决办法
772
查看次数

陷阱getopt无效选项

我正在使用getopt(不getops)为我的bash脚本提供处理选项和开关(long -option和short -o表单)的能力.

我希望能够捕获无效选项并处理它们,通常会回应用户应该尝试cmd --help然后退出脚本.

事实是,getopt捕获了无效选项,它本身输出一条消息,例如"getopt:invalid option - 'x'"

这是我用来设置我的getopt参数的模式:

set -- $(getopt -o $SHORT_OPTIONS -l $LONG_OPTIONS -- "$@")
Run Code Online (Sandbox Code Playgroud)

$ LONG_OPTIONS和$ SHORT_OPTIONS都是以逗号分隔的选项列表.

以下是我处理选项的方法:

 while [ $# -gt 0 ]
    do
        case "$1" in
            -h|--help)
                cat <<END_HELP_OUTPUT

    Help
    ----

    Usage: ./cmd.sh 

    END_HELP_OUTPUT

                shift;
                exit
                ;;
            --opt1)
                FLAG1=true
                shift
                ;;
            --opt2)
                FLAG2=true
                shift
                ;;
            --)
                shift
                break
                ;;
            *)
                echo "Option $1 is not a valid option."
                echo "Try './cmd.sh --help for more information."
                shift
                exit …
Run Code Online (Sandbox Code Playgroud)

bash shell case getopt

13
推荐指数
1
解决办法
1万
查看次数

Access 2010中正确的CASE SELECT语句是什么?

我使用vb.net和Access 2010作为数据库(.accdb)

这适用于MySQL:

SELECT user_id, username, first_name, middle_name, last_name,
CASE is_enable WHEN 1 THEN 'Yes' ELSE 'No' END 
FROM tbl_user_accounts ORDER BY user_id
Run Code Online (Sandbox Code Playgroud)

但是当向Access传递相同的查询时,我收到以下错误:

Unrecognized keyword WHEN.
Run Code Online (Sandbox Code Playgroud)

所以我假设CASE语句在访问方面有所不同,或者访问是否具有该功能?

PS
is_enable是布尔值

sql vb.net ms-access case

13
推荐指数
2
解决办法
8万
查看次数

使用|| 在Rails中的Case切换

我有一部分只有在某些页面使用该布局时我才想在布局中显示.我为所有页面设置了@page_title,并认为我可以使用这样的东西:

<% case @page_title when "Log in" || "Forgot Your Password" || "Create a New Password" %><%= render :partial => "common/hello-world" -%><% end -%>
Run Code Online (Sandbox Code Playgroud)

但是,包含仅发生在标题为"登录"的页面上,而不是其他页面.是|| Case开关上不允许这样的语句?是否有不同的方法在案例开关中设置OR语句?

谢谢!

ruby-on-rails case switch-statement

12
推荐指数
2
解决办法
1万
查看次数

MySQL:使用CASE/ELSE值作为连接参数

我正在尝试根据谁是付款人或收款人,将USERS表中的NAME和PHOTO加入TRANSACTIONS表.它一直告诉我找不到桌子this- 我做错了什么?

SELECT `name`,`photo`,`amount`,`comment`,
(
    CASE `payer_id`
    WHEN 72823 THEN `payee_id`
    ELSE `payer_id`
    END
) AS `this`
FROM `transactions`
RIGHT JOIN `users` ON (`users`.`id`=`this`)
WHERE `payee_id`=72823 OR `payer_id`=72823
Run Code Online (Sandbox Code Playgroud)

php mysql finance join case

12
推荐指数
1
解决办法
2万
查看次数

CASE与大数据集的多个UPDATE查询 - 性能

对于性能,哪种选项对于要更新的​​大型数据集更好?

使用CASE语句或个人更新查询?

案例:

UPDATE tbl_name SET field_name = 
CASE
    WHEN condition_1 THEN 'Blah'
    WHEN condition_2 THEN 'Foo'
    WHEN condition_x THEN 123
    ELSE 'bar'
END AS value
Run Code Online (Sandbox Code Playgroud)

个人查询示例:

UPDATE tbl_name SET field_name = 'Blah' WHERE field_name = condition_1
UPDATE tbl_name SET field_name = 'Foo' WHERE field_name = condition_2
UPDATE tbl_name SET field_name = 123 WHERE field_name = condition_x
UPDATE tbl_name SET field_name = 'bar' WHERE field_name = condition_y
Run Code Online (Sandbox Code Playgroud)

注意:大约300,000条记录将被更新,CASE语句将有大约10,000条WHEN条件.如果使用单个查询,它也是大约10,000

sql postgresql performance case sql-update

12
推荐指数
1
解决办法
1万
查看次数

当日期字段为1/1/1900时显示空字符串

我正在查询这样的数据库:

SELECT DISTINCT 
CASE WHEN CreatedDate = '1900-01-01 00:00:00.000' THEN '' ELSE CreatedDate END AS CreatedDate
FROM LitHoldDetails
Run Code Online (Sandbox Code Playgroud)

lhd.CreatedDate是一个DateTime字段,不可为空.如果字段是最小日期(1/1/1900),我想显示一个空字符串,但我的CASE语句不起作用; 当该值在数据库中时,CreatedDate在我的查询中显示1900-01-01 00:00:00.000.我正在使用SQL Server 2008 R2.我究竟做错了什么?

sql-server datetime case

12
推荐指数
3
解决办法
10万
查看次数

从PostgreSQL中的字段中提取数字

我在Postgres 8.4 中有一个po_number类型列的表varchar.它存储带有一些特殊字符的字母数字值.我想忽略这些字符[/alpha/?/$/encoding/.]并检查列是否包含数字.如果它是一个数字,那么它需要作为数字进行类型转换,否则传递null,因为我的输出字段po_number_new是一个数字字段.

以下是示例:

例

SQL小提琴.

我厌倦了这句话:

select 
(case when  regexp_replace(po_number,'[^\w],.-+\?/','') then po_number::numeric
else null
end) as po_number_new from test
Run Code Online (Sandbox Code Playgroud)

但是我为显式转换得到了一个错误:

错误

regex postgresql conditional case regexp-replace

12
推荐指数
1
解决办法
2万
查看次数