ali.2
Active Member
اصولا وقتی عبارت
جدول products
جدول stores
دستور
اما چرا عبارت
ترتیب سطرها باید به شکل زیر میبود:
آیا این یک باگ در mysql میباشد?
SELECT * FROM table1 CROSS JOIN table2
را اجرا کنیم باید هر رکورد از جدول table1 با تمام رکوردهای جدول table2 ترکیب شده و نتیجه به عنوان خروجی نمایش داده شود.به عنوان مثال فرض کنیم دو جدول products و stores را داشته باشیم:جدول products
price | product_name | id |
699.00 | iPhone | 1 |
599.00 | iPad | 2 |
1299.00 | Macbook Pro | 3 |
store_name | id |
North | 1 |
South | 2 |
SELECT * FROM products CROSS JOIN stores
خروجی زیر را برمیگرداند که مطابق انتظار است.اما چرا عبارت
SELECT * FROM stores CROSS JOIN products
خروجی بر خلاف انتظار تولید میکند?ترتیب سطرها باید به شکل زیر میبود:
price | product_name | id | store_name | id |
699.00 | iPhone | 1 | North | 1 |
599.00 | iPad | 2 | North | 1 |
1299.00 | Macbook Pro | 3 | North | 1 |
699.00 | iPhone | 1 | South | 2 |
599.00 | iPad | 2 | South | 2 |
1299.00 | Macbook Pro | 3 | South | 2 |
آیا این یک باگ در mysql میباشد?