我有2个表,faq和faq_categories,我想加入它们以从表faq_categories中获取类别名称。
faq_categories中唯一需要的字段是名称,而从faq表中我需要所有字段。
我有以下语法(有效)我希望缩短它。
以下是代码:
SELECT faq.faqid, faq.catid, faq.question, faq.question_en, faq.answer,
faq.answer_en, faq.sorder, faq.visible,
faq_categories.categoryname
FROM faq
JOIN faq_categories ON ( faq.catid = faq_categories.catid )
我正在尝试使用此代码选择所有字段:
SELECT * , faq_categories.categoryname
FROM faq
JOIN faq_categories ON ( faq.catid = faq_categories.catid )
LIMIT 0 , 30
但是这个语法会返回两个表中的所有字段,这不是我想要的。我想要的是从faq获取所有字段,并且只从faq_categories获取categoryname。
第一段代码片段有效,但如果可能,我希望缩短它。
任何帮助都将深受赞赏。
关心,佐兰
答案 0 :(得分:1)
使用faq.*, faq_catergories.categoryname
答案 1 :(得分:0)
使用faq.*
。只需使用*
即可请求所有表中的所有列。
SELECT
faq.* ,
faq_categories.categoryname
FROM faq
JOIN faq_categories ON ( faq.catid = faq_categories.catid )
LIMIT 0 , 30
但请注意,除非faq
中有很多列,否则通常建议您明确选择哪些列。这允许您指定它们发生的顺序,并保护您免受可能导致不需要的大量额外列被拉出的架构更改。您明确列出SELECT
中列的第一直觉可能更可取。