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

1052:Cột 'id' trong danh sách trường không rõ ràng

SQL hỗ trợ định tính một cột bằng cách thêm tiền tố tham chiếu bằng tên đầy đủ của bảng:

SELECT tbl_names.id, tbl_section.id, name, section
  FROM tbl_names
  JOIN tbl_section ON tbl_section.id = tbl_names.id 

... hoặc bí danh bảng:

SELECT n.id, s.id, n.name, s.section
  FROM tbl_names n
  JOIN tbl_section s ON s.id = n.id 

Bí danh bảng là cách tiếp cận được đề xuất - tại sao bạn phải nhập nhiều hơn?

Tại sao các truy vấn này trông khác nhau?

Thứ hai, câu trả lời của tôi sử dụng cú pháp ANSI-92 JOIN (của bạn là ANSI-89). Trong khi chúng hoạt động giống nhau, cú pháp ANSI-89 không hỗ trợ các phép nối OUTER (RIGHT, LEFT, FULL). Cú pháp ANSI-89 nên được coi là không được dùng nữa, có nhiều người trên SO sẽ không bỏ phiếu cho cú pháp ANSI-89 để củng cố điều đó. Để biết thêm thông tin khác, hãy xem câu hỏi này .



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Sử dụng Hibernate's ScrollableResults để đọc chậm 90 triệu bản ghi

  2. MySQL JDBC Driver 5.1.33 - Sự cố về múi giờ

  3. Mysql_real_escape_string () có bị hỏng không?

  4. MySQL CHỌN THÍCH hoặc ĐĂNG KÝ để khớp nhiều từ trong một bản ghi

  5. MySQL JOIN với LIMIT 1 trên bảng đã tham gia