casewhen能用并且吗

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了casewhen能用并且吗相关的知识,希望对你有一定的参考价值。

casewhen能用并且
case when语句中加上and or的处理方式
例子:统计出北京,上海,天津的男女性各有多少人,如果还想在这个基础上统计北京,上海,天津退休的男女各有多少人,这个应该怎么做。应该在case when语句中加上and来进行处理。
参考技术A 能的。
Case when 的用法: 一旦满足了某一个WHEN, 则这一条数据就会退出CASE WHEN , 而不再考虑 其他CASE;

Case when 的用法
-- 搜索Case函数:
Case函数(Case搜索函数): 判断表达式的真假,如果为真,返回结果;如果为假,返回else值;如果未定义else值,则返回空值(使用条件确定返回值);
参考技术B 用法如下:
Case函数只返回第一个符合条件的值,剩下的Case部分将会被自动忽略。
Case when 相当于一个自定义的数据透视表,group by 是行名,case when 负责列名。
case有以下几种搭配:
1、in any case表示无论如何。
2、in no case表示绝不。
when有以下几种用法:
1、表示什么时候、何时。
2、可以引导从句。
3、俚语“入乡随俗”。
case用法
1、in any case
in any case表示的含义是“无论如何…”,在逻辑上引出一个结果。
例句:
In any case,GM has much bigger worries than s sales crown.
无论如何,通用汽车要担心的绝不仅仅是个销售王冠的丢失。
2、in no case
in no case表示的含义是“绝不…”。需要注意的是,当这一表达用于句首时,需要进行倒装处理。
例句:
In no case can we cheapen the quality of products.
在任何情况下我们都不能降低产品质量。
As our tradition,tribe chiefs are in no case allowed to leave the earth where they were born and raised up.
我们每一代首领,绝对不能离开他们出生的土地。
3.such being the case
such being the case表示“既然如此”,其作用是“强调之前的某个条件并得出结论”。
例句:
The roads are bad,and such being the case,we must drive slowly.
道路很糟,情况既然如此,我们只好把车开慢点儿。
参考技术C 不能,不是一个意思。 标准的(建议用第一种 标准并且不容易出错 可判断任意条件) 参考技术D 不能用,Case函数只返回第一个符合条件的值,剩下的'Case部分将会被自动忽略。 Case when 相当于一个自定义的数据透视表,group by 是行名,case when 负责列名。

你能用链接调用一个servlet吗?

【中文标题】你能用链接调用一个servlet吗?【英文标题】:Can you call a servlet with a link? 【发布时间】:2011-01-17 01:07:14 【问题描述】:

你能调用带有链接的 servlet 吗?例如

<a href="/servletName">link text</a>

并且可能通过将参数添加到查询字符串来将参数传递给请求对象。

如果没有,我见过这样的事情:

RequestDispatcher dispatcher = getServletContext().getRequestDispatcher(/MyServlet); 
dispatcher.include(request,response); 

但是我该如何触发呢?例如,如果它是 JavaScript 代码,我可以将它放在一个 jQuery click 函数中,或者如果这是一个 servlet,我会将它放入一个方法中。

但是我如何从 JSP 中调用此代码。据我所知,您不能使用 JavaScript 事件调用 Java 代码。

【问题讨论】:

【参考方案1】:
<a href="servletUrl?param=value">click</a>

完全合法,并且会起作用。

这样就会调用servlet的doGet(..)方法,可以使用request.getParameter("param")获取参数

【讨论】:

...它将专门调用doGet() @Ankur:这当然不依赖于浏览器。问题可能在于 HTML/JS 代码或浏览器中的缓存页面(按 Ctrl+F5 或重新启动)。 如果您将表单发布到 url,则会触发 doPost【参考方案2】:

也许以下就是你所追求的:

<jsp:include page="/MyServlet">
    <jsp:param name="param" value="value"/>
</jsp:include>

【讨论】:

【参考方案3】:

只是为了澄清一个误解:

据我所知,您不能使用 Javascript 事件调用 Java 代码。

您可以使用 JavaScript 代码(和事件)完美地调用 Java 代码。至此,您只需要让 JavaScript 向服务器端发送一个完整的 HTTP 请求即可。基本上有3种方法。

    第一种方法是模拟现有链接/按钮/表单的调用。例如

    <a id="linkId" href="http://www.google.com/search?q=balusc">Link</a>
    
    <script type="text/javascript">
        document.getElementById('linkId').click();
    </script>
    

    <form id="formId" action="http://www.google.com/search">
        <input type="text" id="inputId" name="q">
    </form>
    
    <script type="text/javascript">
        document.getElementById('inputId').value = 'balusc';
        document.getElementById('formId').submit();
    </script>
    

    第二种方法是使用 window.location 来触发一个普通的 GET 请求。例如:

    <script type="text/javascript">
        var search = 'balusc';
        window.location = 'http://www.google.com/search?q=' + search;
    </script>
    

    第三种方法是使用 XMLHttpRequest 对象触发异步请求并处理结果。这种技术是“Ajax”的基本思想。这是一个与 Firefox 兼容的示例:

    <script type="text/javascript">
        function getUrl(search) 
            var xhr = new XMLHttpRequest();
            xhr.onreadystatechange = function() 
                if (xhr.readyState == 4) 
                    var responseJson = eval('(' + xhr.responseText + ')');
                    var url = responseJson.responseData.results[0].unescapedUrl;
                    var link = document.getElementById('linkId');
                    link.href = link.firstChild.nodeValue = url;
                    link.onclick = null;
                
            
            var google = 'http://ajax.googleapis.com/ajax/services/search/web?v=1.0&q='
            xhr.open('GET', google + search, true);
            xhr.send(null);
        
    </script>
    
    <p>My homepage is located at: <a id="linkId" href="#" onclick="getUrl('balusc')">click me!</a></p>
    

    这可以用jQuery以更短且跨浏览器兼容的方式重写。

只需将 http://www.google.com/search 替换为您自己的 servlet 即可让上述示例在您的环境中运行。

有关更多背景信息,您可能会发现this article 也很有用。

【讨论】:

为了进一步澄清误解 - 您不能“从 javascript 调用 Java”,但您可以调用最终导致 Java 代码执行的 URL。区别很细微,但理解起来很重要。

以上是关于casewhen能用并且吗的主要内容,如果未能解决你的问题,请参考以下文章

casewhen嵌套casewhen出现空值为啥会出现空值

SQLAlchemy:group_concat(case when ...)可能吗?

SQL DB2 - 可以缩短长期列出的“case when”语句吗?

介绍MySQL的caseWhen end语句

您可以在窗口函数中包含除法吗(红移)

Mysql oracle casewhen 完美应用