Sobes.tech
Middle

SQL-ის სვეტით დაწერეთ: მომხმარებლების (clients) და შავი სიას (blacklist) ცხრილები არსებობს და მათში id ველი. აირჩიეთ ყველა მომხმარებელი, რომელიც შავ სიაში არ არის. რამდენიმე გადაწყვეტა შემოგთავაზეთ.

sobes.tech AI

პასუხი AI-სგან

მომხმარებლების არჩევა, რომლებიც არ არიან შავ სიაში, შესაძლებელია რამდენიმე SQL სვეტის გამოყენება:

  1. LEFT JOIN გამოყენებით NULL-ის შემოწმებით:
SELECT c.*
FROM clients c
LEFT JOIN blacklist b ON c.id = b.id
WHERE b.id IS NULL;
  1. NOT IN გამოყენებით:
SELECT *
FROM clients
WHERE id NOT IN (SELECT id FROM blacklist);
  1. NOT EXISTS გამოყენებით:
SELECT *
FROM clients c
WHERE NOT EXISTS (
  SELECT 1 FROM blacklist b WHERE b.id = c.id
);

ეს ვარიანტები თითოეულს აქვს თავისი შესრულების მახასიათებლები, მონაცემთა ბაზის მართვის სისტემასა და მონაცემთა მოცულობაზე დამოკიდებული.