MySQL просмотров - PullRequest
       10

MySQL просмотров

0 голосов
/ 06 февраля 2009

Я пытаюсь создать представление для СОЮЗА из 2 операторов выбора, которые я создал.

UNION работает нормально при индивидуальном исполнении

Но проблема в том, что только 1-я часть UNION выполняется, когда я выполняю ее как представление.

Я использую следующий запрос:

   SELECT DISTINCT
  products.pid        AS id,
  products.pname      AS name,
  products.p_desc     AS description,
  products.p_uid      AS userid,
  products.p_loc      AS location,
  products.isaproduct AS whatisit
FROM products
UNION
SELECT DISTINCT
  services.s_id       AS id,
  services.s_name     AS name,
  services.s_desc     AS description,
  services.s_uid      AS userid,
  services.s_location AS location,
  services.isaservice AS whatisit
FROM services

Выше работает нормально, когда я выполняю его отдельно. Но когда я использую его в качестве представления, он не дает мне результатов сервисной части.

Может ли кто-нибудь помочь мне с этим?

1 Ответ

0 голосов
/ 06 февраля 2009

Попробуйте это

   SELECT DISTINCT
  products.pid        AS id,
  products.pname      AS name,
  products.p_desc     AS description,
  products.p_uid      AS userid,
  products.p_loc      AS location,
  products.isaproduct AS whatisit
FROM products
UNION ALL
SELECT DISTINCT
  services.s_id       AS id,
  services.s_name     AS name,
  services.s_desc     AS description,
  services.s_uid      AS userid,
  services.s_location AS location,
  services.isaservice AS whatisit
FROM services

Я не уверен, я пробовал это с таблицей на моем сервере, и это сработало .. Я думаю, это будет работать для вас. Подсказка Единственная разница здесь в том, что я использовал "union all" вместо просто "union"

...