Вы можете использовать union all
, чтобы объединить все таблицы, сохранив столбец для каждой из них:
select date, sum(a) a, sum(b) b, sum(c) c, sum(d) d, sum(e) e
from (
select date, price a, null b, null c, null d, null e
from a
union all
select date, null, price, null, null, null
from b
union all
select date, null, null, price, null, null
from c
union all
select date, null, null, null, price, null
from d
union all
select date, null, null, null, null, price
from e) as x
group by date;
Если вас устраивает этот результат, вы можете создать для него таблицу, предшествуя предыдущему [ 113] запрос с:
create table master(Date date, Price int) as
Вы захотите быть осторожными с той командой. Это будет переопределение Ваш $PATH.
Вы, возможно, должны были бы поместить его в ~/.bash_profile
и изменить его на это:
export PATH="$HOME/opt/git/bin:$PATH"
Это должно было работать.
, Где $HOME указывает на?
Удостоверяются, что $HOME/opt/git/bin на самом деле содержит исполняемый файл, названный мерзавцем.
Необходимо удалить '', пробуют, это
export PATH=$HOME/opt/git/bin
И не сделать перезаписывает целую попытку пути это:
export PATH=$PATH:$HOME/opt/git/bin
Как SirLancelot указал, Вы сбрасываете свой путь вместо того, чтобы увеличить его. Вы также использовали одинарные кавычки вместо двойных кавычек, таким образом, набор значений был точно показанной строкой вместо содержания расширенного значения $HOME. Как отмечено, правильное решение этого состоит в том, чтобы использовать:
export PATH="$PATH:$HOME/opt/git/bin"
Или можно инвертировать порядок:
export PATH="$HOME/opt/git/bin:$PATH"
Однако все, что делает, гарантируют это, когда Вы тип git
, исполняемый файл будет найден.
Ваш вопрос также упоминает, что использовал $git
; необходимо было бы установить ту переменную, возможно, с помощью:
export git=$(which git)
Однако я не вижу преимущества для использования $git
, когда git
находится на Вашем ПУТИ; это - один дополнительный символ для ввода (и смещенное разрядное также). Если Вы хотите продолжить использовать $git
, Вы, вероятно, не должны добавлять $HOME/opt/git/bin
для СОЕДИНЕНИЯ КАНАЛОМ. Его присутствие замедляет неудачные поиски команды, и если бы Вы всегда получаете доступ git
через [1 111] (который должен был бы теперь быть установлен с помощью: export git=$HOME/opt/git/bin/git
) нет никакого преимущества для наличия git
каталог bin на Вашем ПУТИ.
Masi прокомментировал о порядке, являющемся бессмысленным, и Douglas Leeder ответил:
порядок не бессмыслен - это - порядок [в котором каталоги] искавшие. Однако
git
не находится ни в одном из Ваших других поисковых каталогов, и не должно быть никакого перекрытия между командами вgit
каталог bin и любые другие, таким образом, порядок не будет иметь никакого значения в этом случае.
Это в основном точно, но я буду вращать его немного. Когда команда разыскивается, система ищет программу путем поиска ее в каждом каталоге в ПУТИ, пока она не находит его. Так, когда это будет искать ls
, например, с git
каталог bin впереди ПУТИ, оболочки будут искать $HOME/opt/git/bin/ls
и не находить его и переходить к другим каталогам в Вашем ПУТИ, в конечном счете находя его в [1 119] или /bin/ls
. Некоторые оболочки кэшируют местоположение, где программа найдена; других не делают. Так, может иметь смысл оставаться /bin
и /usr/bin
близость передняя сторона Вашего ПУТИ, ускорять доступ к стандартным утилитам. Я всегда сохраняю $HOME/bin
впереди моего ПУТИ; тем путем я могу переопределить что-либо со своей собственной версией - и я делаю это для некоторых команд.
кроме того, на моей основной машине работы, /usr/local/bin
каталог не находится под моим контролем. Я не доверяю ему, поэтому, и я удостоверяюсь, что это правильно в конце моего ПУТИ, таким образом, старинный GCC в нем не является тем, я использую, например. [ Hmmm; они обновили его к 3.4.6; это раньше было 2.95 или поблизости; тем не менее я использую 4.3.3. ]
Еще одно предложение для Вас. Рассмотрите создание символьной ссылки в Вашем $HOME/bin
(предположение, что Вы имеете один, и именно на Вашем ПУТИ) указывает на местоположение установки [1 126]. Это означает, что Вы не добавляете дополнительный каталог для СОЕДИНЕНИЯ КАНАЛОМ (таким образом, вещи работают незначительно быстрее), но Вы действительно добираетесь для использования версии [1 127], Вы принимаете решение использовать.
ln -s $HOME/opt/git/bin/git $HOME/bin/git