У меня была проблема с дублирующимися записями в одной таблице. Ниже приведены подходы к работе.
Наконец, я решил это, используя следующие запросы:
IF OBJECT_ID ( N'tempdb .. # New_format_donor_temp ', N'U') НЕ ТАБЛИЦА NULL DROP #New_format_donor_temp; выберите * в #New_format_donor_temp из DONOR_EMPLOYMENTS, где DONOR_ID IN (1, 2) - Test New_format_donor_temp - SELECT * - FROM #New_format_donor_temp;
UPDATE de SET STATUS_CD = de_new.STATUS_CD, STATUS_REASON_CD = de_new.STATUS_REASON_CD, TYPE_CD = de_new.TYPE_CD FROM DONOR_EMPLOYMENTS КАК ИННЕРНАЯ ПРИСОЕДИНЯЯСЬ #New_format_donor_temp AS de_new ON de_new.EMP_NO = de.EMP_NO WHERE de.DONOR_ID IN (3, 4 )
Я не очень разбираюсь в SQL, пожалуйста, сообщите нам какой-нибудь лучший подход.
Выше запросы для сервера MySql.
Это то, что вам нужно: библиотека help-fns+.el
.
Это дает вам, как Ch Mk, команду describe-keymap
, который дает вам понятное для человека описание любой комбинации клавиш, привязанной к переменной. Например ::
C-h M-k dired-mode-map
dired-mode-map -------------- For more information check the manuals. Local keymap for `dired-mode' buffers. key binding --- ------- e .. f dired-find-file RET dired-find-file C-o dired-display-file C-t Prefix Command ESC Prefix Command SPC dired-next-line ! dired-do-shell-command # dired-flag-auto-save-files $ dired-hide-subdir % Prefix Command & dired-do-async-shell-command * Prefix Command + dired-create-directory - negative-argument . dired-clean-directory 0 .. 9 digit-argument : Prefix Command dired-next-dirline ? dired-summary A dired-do-search B dired-do-byte-compile C dired-do-copy D dired-do-delete G dired-do-chgrp H dired-do-hardlink L dired-do-load M dired-do-chmod O dired-do-chown P dired-do-print Q dired-do-query-replace-regexp R dired-do-rename S dired-do-symlink T dired-do-touch U dired-unmark-all-marks X dired-do-shell-command Z dired-do-compress ^ dired-up-directory a dired-find-alternate-file d dired-flag-file-deletion g revert-buffer h describe-mode i dired-maybe-insert-subdir j dired-goto-file k dired-do-kill-lines l dired-do-redisplay m dired-mark n dired-next-line o dired-find-file-other-window p dired-previous-line q quit-window s dired-sort-toggle-or-edit t dired-toggle-marks u dired-unmark v dired-view-file w dired-copy-filename-as-kill x dired-do-flagged-delete y dired-show-file-type z kill-this-buffer ~ dired-flag-backup-files DEL dired-unmark-backward mouse-face dired-mouse-find-file-other-window ?? C-t C-t image-dired-dired-toggle-marked-thumbs C-t . image-dired-display-thumb C-t a image-dired-display-thumbs-append C-t c image-dired-dired-comment-files C-t d image-dired-display-thumbs C-t e image-dired-dired-edit-comment-and-tags C-t f image-dired-mark-tagged-files C-t i image-dired-dired-display-image C-t j image-dired-jump-thumbnail-buffer C-t r image-dired-delete-tag C-t t image-dired-tag-files C-t x image-dired-dired-display-external C-M-d dired-tree-down C-M-n dired-next-subdir C-M-p dired-prev-subdir C-M-u dired-tree-up M-$ dired-hide-all M-= dired-backup-diff M-s Prefix Command M-{ dired-prev-marked-file M-} dired-next-marked-file M-DEL dired-unmark-all-files M-s a Prefix Command M-s f Prefix Command % & dired-flag-garbage-files % C dired-do-copy-regexp % H dired-do-hardlink-regexp % R dired-do-rename-regexp % S dired-do-symlink-regexp % d dired-flag-files-regexp % g dired-mark-files-containing-regexp % l dired-downcase % m dired-mark-files-regexp % r dired-do-rename-regexp % u dired-upcase * C-n dired-next-marked-file * C-p dired-prev-marked-file * ! dired-unmark-all-marks * % dired-mark-files-regexp * * dired-mark-executables * / dired-mark-directories * ? dired-unmark-all-files * @ dired-mark-symlinks * c dired-change-marks * m dired-mark * s dired-mark-subdir-files * t dired-toggle-marks * u dired-unmark * DEL dired-unmark-backward : d epa-dired-do-decrypt : e epa-dired-do-encrypt : s epa-dired-do-sign : v epa-dired-do-verify dired-undo dired-next-line dired-previous-line dired-toggle-read-only dired-undo M-s f C-s dired-isearch-filenames M-s f ESC Prefix Command M-s a C-s dired-do-isearch M-s a ESC Prefix Command M-s f C-M-s dired-isearch-filenames-regexp M-s a C-M-s dired-do-isearch-regexp
C-h m
(describe-mode
), которая обычно показывает описание текущих основных и второстепенных режимов, как правило, с их раскладками? (substitute-command-keys "\\{foo-map}")
- это то, что describe-mode
использует внутренне, чтобы генерировать удобное описание раскладки клавиатуры foo-map
. (event-modifiers 33554445)
==> (shift control)
(format "%c" (event-basic-type 33554445))
==> "m"
Я просто написал следующее, основанное на ответе Жиля, поэтому я решил, что опубликую его.
Я вижу, что Drew's describe-keymap
имеет очень похожую основу, но также охватывает различные другие приложения, случаев, поэтому я не склонен предлагать использовать это как более полное решение; но FWIW:
(defun my-describe-keymap (keymap)
"Describe a keymap using `substitute-command-keys'."
(interactive
(list (completing-read
"Keymap: " (let (maps)
(mapatoms (lambda (sym)
(and (boundp sym)
(keymapp (symbol-value sym))
(push sym maps))))
maps)
nil t)))
(with-output-to-temp-buffer (format "*keymap: %s*" keymap)
(princ (format "%s\n\n" keymap))
(princ (substitute-command-keys (format "\\{%s}" keymap)))
(with-current-buffer standard-output ;; temp buffer
(setq help-xref-stack-item (list #'my-describe-keymap keymap)))))
Вот реализация бедных людей, что дает вам describe-bindings
(C-h b), но ограничивается определенной раскладкой. Форматирование не очень хорошо, но вы должны начать:
(defun describe-keymap (keymap &optional prefix)
(pop-to-buffer "Keymap description")
(erase-buffer)
(describe-keymap-impl keymap prefix))
(defun describe-keymap-impl (keymap &optional prefix)
"show a description of keymap"
(let (keymaps-to-process)
(mapc (lambda (partofkeymap)
(when prefix
(insert (concat prefix " ")))
(insert (key-description (list partofkeymap)))
(insert " ")
(cond ((atom partofkeymap))
((listp (cdr partofkeymap))
(insert "prefix-key")
(if (eq 'keymap (cadr partofkeymap))
(setq keymaps-to-process (cons partofkeymap keymaps-to-process))))
(t
(insert (symbol-name (cdr partofkeymap)))))
(insert "\n"))
(if (and (symbolp keymap) (boundp keymap))
(symbol-value keymap)
keymap))
(while keymaps-to-process
(insert "\n\n")
(describe-keymap-impl (cddar keymaps-to-process) (concat prefix (key-description (list (caar keymaps-to-process)))))
(setq keymaps-to-process (cdr keymaps-to-process))))
nil)
Я тестировал, оценивая оба:
(describe-keymap emacs-lisp-mode-map)
(describe-keymap 'emacs-lisp-mode-map)
describe-bindings' doesn't take a keymap as an argument. :( But the documentation for
substitute-command-keys явно подразумевают следующее: «Подстроки формы \ {MAPVAR} заменяются по резюме (сделано describe-bindings') of the value of MAPVAR, taken as a keymap." Perhaps, one can overcome this by installing the interesting keymap as a local keymap in a temporary buffer, and running the standard
описать-привязки "там ...
– imz -- Ivan Zakharyaschev
14 August 2010 в 00:46
describe-keymap
, в help-fns + .el . См. Мой ответ выше.
– Drew
12 October 2013 в 22:08
package-install
)help+
иhelp-fns+
, но не определены ниC-h M-k
, ниC-h C-k
, ни командаdescribe-keymap
. – Vladimir Panteleev 2 May 2016 в 13:19help-map
изC-h
.<f1>
все еще привязан к нему? Например.<f1> M-k
. Однако вы обычно обращаетесь к справки, это префиксный ключ, в котором эти команды связаны. Например.(define-key help-map "\M-k" 'describe-keymap)
. Но еслиM-x describe-keymap
даже не распознается, вы не должны правильно загружать («установлены») файлы («пакеты»). ЧтоM-: (featurep 'help-fns+)
говорит вам? – Drew 2 May 2016 в 14:07