SQL查询比较2列

时间:2017-04-15 18:07:52

标签: mysql

我有一个包含3列id,访问日期和约会日期的表。 我想编写一个SQL查询来查找以下内容 对于每个ID,访问日期与约会日期匹配的条目数。请注意,对于每个id,必须跨多行进行比较。 例如:

id  Visit-date  Appointment-date
1     20-1-2016   20-2-2016
1     20-2-2016   30-3-2016
1     04-04-2016  05-05-2016

等等

非常感谢你的帮助。 普拉萨德

2 个答案:

答案 0 :(得分:0)

您可以使用带聚合的左连接来获得所需的结果:

class list
{
    struct item {
        rec* value;
        rec* prev;
        rec* next;
    };
    item * first;
    item * last;
public:
    // ...
};

答案 1 :(得分:0)

您可以按ID分组记录分组。

(ns ...
  (:require [clojure.string :as str]
            [clojure.zip :as zip]
            [clygments.core :as cly]
            [hickory.core :as hkc]
            [hickory.render :as hkr]
            [hickory.zip :as hkz]))

(defn is-highlightable?
  "Return true if the node is of a type that this program can
  highlight. Specifically, is the node wrapped in a :pre tag,
  tagged as :code and does it include a language name."
  [node]
  (let [is-pre (= (:tag node) :pre)
        fc (first (:content node))  ; Get inside the <pre> tag.
        has-code (= (:tag fc) :code)
        has-class (get-in fc [:attrs :class])
        has-language (when has-class
                       (.startsWith has-class "language-"))]
    (and is-pre has-code has-class has-language)))

    (defn hilight-node
      "Return a highlighted version of the source code in the node."
      [node]
      (let [fc (first (:content node))        ; Get inside the <pre> tag.
            lang (get-in fc [:attrs :class])
            language (str/replace lang "language-" "")
            cntnt (first (:content fc))
            hili (cly/highlight cntnt (keyword language) :html)
            frag (hkc/parse-fragment hili)
            hck-hili (hkc/as-hickory (first frag))
            new-node {:type :element :attrs {:class (str "lang-" language)}
                      :tag  :div :content [hck-hili]}]
        new-node))

      (defn edit-html-tree
        "Take a zipper, a function that matches a pattern in the tree,
         and a function that edits the current location in the tree.  Examine the tree
         nodes in depth-first order, determine whether the matcher matches, and if so
         apply the editor."
        [zipper matcher editor]
        (loop [loc zipper]
          (if (zip/end? loc)
            (zip/root loc)
            (if-let [matched (matcher (zip/node loc))]
              (let [new-loc (zip/edit loc editor)]
                (if (not= (zip/node new-loc) (zip/node loc))
                  (recur (zip/next new-loc))))
              (recur (zip/next loc))))))

      (defn hilight-syntax
        "Return a version of the input HTML where the code listings have
        been syntax highlighted."
        [html-in]
        (hkr/hickory-to-html (edit-html-tree
                               (hkz/hickory-zip (hkc/as-hickory (hkc/parse html-in)))
                               is-highlightable?
                               hilight-node)))