[英]Select Data from two tables where there is no common field between them at all
我想從兩個表中選擇數據,但是它們沒有共同之處。
在“用戶”表中,字段是uid,uname和uemail
和
在表格中,“患者”字段為pid,pame和pemail
現在,我想在一列中選擇所有用戶電子郵件和患者電子郵件ID。 我怎么做?
你可以用UNION做到這一點
SELECT uemail FROM users
UNION
SELECT pemail FROM patients;
如果您要區分您的電子郵件來自哪個表,請添加具有恆定值的列:
SELECT
'users' as source, uemail
FROM users
UNION
SELECT
'patients', pemail
FROM patients;
請注意,如果沒有關鍵字ALL
您將只能獲得不同的行。
編輯
如果需要其他列的值,只需將它們添加到選擇中:
SELECT
'users' as source,
uid,
uname,
uemail
FROM users
UNION
SELECT
'patients',
pid,
pname,
pemail
FROM patients;
現在,您可以使用WHERE子句進行過濾。 請注意,列名將取自第一個SELECT語句。
SELECT * FROM
(SELECT
'users' as source,
uid as id,
uname as name,
uemail as email
FROM users
UNION
SELECT
'patients',
pid,
pname,
pemail
FROM patients
) u
WHERE
u.id = 3;
只是簡單的選擇*來自用戶,患者
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.