sách gpt4 ăn đã đi

mysql - Chỉ thêm điều kiện câu lệnh sql vào INNER JOIN nếu bản ghi INNER JOIN tồn tại

In lại Tác giả: Walker 123 Thời gian cập nhật: 29-11-2023 10:09:38 28 4
mua khóa gpt4 giày nike

Tôi đang cố gắng chọn một hàng từ bảng người dùng dựa trên một điều kiện trong bảng nối chỉ khi có một bản ghi tồn tại trong bảng nối. Nếu bản ghi không tồn tại, tôi muốn trả về hàng. Tôi chỉ muốn không trả lại hàng nếu có bản ghi INNER JOIN và contact_blocked != 1.

Với câu lệnh sau, tôi đạt được hiệu quả mình muốn khi tồn tại bản ghi user_to_users và giá trị của contact_blocked = 0. Trả lại hàng. Khi một liên hệ bị chặn, không có gì được trả lại. Điều đó sẽ tuyệt vời. Tuy nhiên, ngoài ra, khi bản ghi INNER JOIN chưa tồn tại, tôi vẫn muốn trả về các hàng chứa người dùng vì chúng chưa bị chặn và mối quan hệ chưa tồn tại. Không biết phải làm gì.

Đây là những gì tôi muốn, không cần tham gia:

CHỌN users.user_id 
TỪ người dùng
NƠI users.username = 'Danny Boy'

Đây là kết nối tôi muốn:

CHỌN users.user_id 
TỪ người dùng
NỘI TRONG JOIN users_to_users
TRÊN users.user_id = users_to_users.user_id
VÀ users_to_users.contact_user_id ='123'
NƠI users.username = 'Danny Boy'
VÀ users_to_users.contact_blocked != 1

Tôi muốn điều kiện nối chỉ được áp dụng nếu có bản ghi nối. Nếu không thì tôi muốn nộp đơn cho trường hợp đầu tiên.

biên tập

kết quả mong muốn.

Nếu bản ghi user_to_users tồn tại, hàng có tên người dùng "Danny Boy" trong người dùng chỉ được trả về nếu user_to_users.contact_blocked != 1.

Nếu bản ghi user_to_users không tồn tại, hãy trả về hàng cho "Danny Boy" trong người dùng

câu trả lời hay nhất

Tôi nghĩ bạn muốn:

CHỌN u.user_id 
TỪ người dùng u TRÁI THAM GIA
người dùng_đến_người_dùng utu
TRÊN u.user_id = utu.user_id VÀ utu.contact_user_id = '...'
NƠI u.username = '...' VÀ
(utu.contact_blocked = 1 HOẶC utu.contact_blocked LÀ NULL);

Về mysql - chỉ thêm điều kiện câu lệnh sql vào INNER JOIN khi bản ghi INNER JOIN tồn tại, chúng tôi đã tìm thấy một câu hỏi tương tự trên Stack Overflow: https://stackoverflow.com/questions/51227568/

28 4 0
Chứng chỉ ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com
Xem sitemap của VNExpress