Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Hiểu sản phẩm Cartesian trong SQL

Một phép nối Descartes kết hợp mọi bản ghi trong bảng đầu tiên với mọi bản ghi trong bảng thứ hai, vì vậy vì bảng của bạn có 7 hàng và nó được kết hợp với chính nó, nó sẽ trả về 49 bản ghi nếu bạn không có where mệnh đề. Mệnh đề where của bạn chỉ cho phép các bản ghi a số dư của nhỏ hơn b số dư của. Kể từ 900 như bạn đã nói, là số dư tối đa trong bảng, nó sẽ không bao giờ nhỏ hơn bất kỳ số dư nào khác và do đó nó sẽ không bao giờ được trả lại.

Đối với năm hàng đầu tiên, các quy tắc thông thường của SQL cũng áp dụng cho các phép nối. Vì các bảng SQL không có thứ tự nội tại, nên hoàn toàn phụ thuộc vào cơ sở dữ liệu để quyết định cách trả lại chúng, trừ khi bạn nêu rõ một thứ tự trong order by mệnh đề. Các giá trị bạn đã liệt kê là các giá trị hoàn toàn hợp lệ mà bạn mong muốn truy vấn trả về.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cấu trúc truy vấn để tạo bảng

  2. SQLSTATE [22007]:Định dạng ngày giờ không hợp lệ:1292 Giá trị ngày giờ không chính xác:'2019-03-31 01:52:25'

  3. Cách tôi lưu và truy xuất hình ảnh trên máy chủ của mình trong ứng dụng web java

  4. Spring Boot JPA:Chuyển nhiều giá trị cho cùng một thông số (JPQL)

  5. Nhận chênh lệch thời gian chính xác từ trường ngày giờ MYSQL