ฉันมีคำถามเช่นนี้:
SELECT * FROM (SELECT linktable FROM adm_linkedfields WHERE name = 'company') as cbo WHERE group='BEST'
โดยพื้นฐานแล้ว ชื่อตารางสำหรับการสืบค้นหลักจะถูกดึงมาจากแบบสอบถามย่อย
ฉันได้รับข้อผิดพลาดที่ #1054 - Unknown column 'group' in 'where clause'
เมื่อฉันตรวจสอบ (ลบคำสั่ง Where ออก) ฉันพบว่าแบบสอบถามส่งคืนเฉพาะผลลัพธ์ของแบบสอบถามย่อยตลอดเวลา
ตารางแบบสอบถามย่อย adm_linkedfields
มีโครงสร้าง id | name | linktable
ขณะนี้กำลังใช้ MySQL กับ PDO แต่แบบสอบถามควรเข้ากันได้กับฐานข้อมูลหลัก (ได้แก่ Oracle, MSSQL, PgSQL และ MySQL)
อัปเดต: แบบสอบถามย่อยควรส่งคืนชื่อของตารางสำหรับแบบสอบถามหลัก ในกรณีนี้มันจะส่งคืน tbl_company
ตาราง tbl_company
สำหรับการสืบค้นหลักมีโครงสร้างดังนี้ : id | name | group
ขอบคุณล่วงหน้า.