کد شما باید روی نسخهی استاندارد PostgreSQL قابل اجرا باشد.
علی پسر کنجکاوی است. او پس از این که دوری کارآموزیاش را گذرانده و در بله ماندگار شده، دلش میخواهد کمی اطلاعات از الگوهای رفتاری کاربران بهدست آورد.
تعدادی سؤال در ذهن علی پیش آمده و علی میخواهد به پاسخ این سؤالات برسد. به همین دلیل، باید تعدادی کوئری در دیتابیس اجرا کند. به علی کمک کنید تا به کنجکاویاش برسد :)
ساختار جداول بهصورت زیر است:
users
):نام ستون | نوع | تعریف | ملاحضات |
---|---|---|---|
id |
INTEGER |
شناسهی کاربر | PRIMARY KEY |
name |
VARCHAR(255) |
نام | |
nick |
VARCHAR(32) |
نام کاربری |
relations
):نام ستون | نوع | تعریف | ملاحظات |
---|---|---|---|
from_user_id |
INTEGER |
شناسهی کاربری که میتواند بلاک کند | |
to_user_id |
INTEGER |
شناسهی کاربری که میتواند بلاک شود | |
blocked |
BOOLEAN |
وضعیت بلاک بودن کاربر | DEFAULT FALSE |
blocked_at |
TIMESTAMP |
زمان بلاک شدن کاربر | DEFAULT NULL |
messages
):نام ستون | نوع | تعریف | ملاحظات |
---|---|---|---|
id |
INTEGER |
شناسهی پیام | PRIMARY KEY |
from_user_id |
INTEGER |
شناسهی کاربر ارسالکنندهی پیام | |
to_user_id |
INTEGER |
شناسهی کاربر دریافتکنندهی پیام | |
body |
BYTEA |
متن پیام | |
created_at |
TIMESTAMP |
زمان ارسال شدن پیام | |
edited_at |
TIMESTAMP |
زمان آخرین ویرایش پیام (در صورت ویرایش شدن) | |
deleted_at |
TIMESTAMP |
زمان حذف پیام (در صورت حذف شدن) |
سؤالات ذهن آشفتهی علی بهشرح زیر هستند:
nick
) آنها با am
شروع میشود بهترتیب صعودینکته: نام ستون خروجی مهم نیست.
کوئریهای خود را در قالب زیر، در یک فایل با پسوند .sql
قرار داده و آن را ارسال کنید (فایل را زیپ نکنید).