Соедините две таблицы на основе идентификатора по времени

Мне нужно объединить две таблицы и порядок по дате двух таблиц..

Лекарственное средство

| Id | Patientid | Name | Quantity |  medicine name | Takingtype | Epoch     |
===============================================================================
|  1 |       12  | raja | 20       | Ampicillin     |    1-1-1   | 1420446675|

хирургический

| Id | Patientid | Name | medicine name | Quantity | Epoch      |
=======================================================================
|  1 |       12  | raja | Mucinex oral  | 10       | 1420446675 |

Может кто-нибудь мне помочь? Результат должен быть таким,

|s.no| Date     | Name | Quantity  |  medicine name | Takingtype |
=================================================================
|  1 | 1-5-2015 | raja |  20       | Ampicillin     |    1-1-1   |
|  2 | 1-5-2015 | raja |  10       |Mucinex oral    |            |

Пожалуйста, помогите мне присоединиться к таблицам, как показано выше. Я ищу запрос MySQL..

(Я изменил время эпохи в php..)

2 ответа

Решение

Если я правильно понимаю ваш вопрос, тогда вы хотите не объединение, а объединение.

select * from (
    select Name, Quantity, MedicineName, Epoch, Takingtype From Medicine
        union all 
    select Name, Quantity, MedicineName, Epoch, NULL From Surgical
) x order by epoch;

Я также предполагаю, что вы хотите, чтобы s.no был столбцом, содержащим порядковые номера строк. Насколько мне известно, вы не можете достичь этого в MySQL без временной таблицы (эксперты могут исправить меня здесь).

Наконец, если ваше datetime действительно время от эпохи, вам нужно использовать встроенную FROM_UNIXTIMESTAMP, что-то вроде

select * from (
    select FROM_UNIXTIMESTAMP(Epoch) AS Date, Name, Quantity, MedicineName, Epoch, Takingtype From Medicine 
        union all 
    select FROM_UNIXTIMESTAMP(Epoch) AS Date, Name, Quantity, MedicineName, Epoch, NULL From Surgical
) x order by epoch;

Вы ищете UNION в MySQL?

SELECT name, quantity, medicine, Takingtype FROM Medicine
UNION ALL
SELECT name, quantity, medicine, NULL FROM Surgical
Другие вопросы по тегам