Query (คิวรี่) เป็นการกรองข้อมูลที่ต้องการจากตารางฐานข้อมูลจำนวนมาก เพื่อมาใช้งานตามความต้องการ โดยการ Query ก็จะมีประเภทของคิวรี่ต่างกันออกไป
วิธีการ Query คำสั่ง SQL ใน Joomla ก็จะมีความแตกต่างกับการ Query ใน SQL ทั่วไป
ตัวอย่าง
insert
การ insert ใน sql
โค้ด: เลือกทั้งหมด
INSERT INTO table_name ( column_name_1, column_name_2, ..., column_name_n )
VALUES ( 'value_1', 'value_2', ..., 'value_n' );
โค้ด: เลือกทั้งหมด
$db = JFactory::getDbo();
$query = $db->getQuery(true)
->insert('table_name')
->columns(array('column_name_1', 'column_name_2'))
->values($db->q('column_value_1').','.$db->q('column_value_2'));
$db->setQuery($query);
$db->execute();
การ select ใน sql
โค้ด: เลือกทั้งหมด
SELECT column_name_1, column_name_2, ..., column_name_n
INTO new_database_name
FROM table_name
WHERE condition;
โค้ด: เลือกทั้งหมด
$db = JFactory::getDbo();
$query = $db->getQuery(true)
->select('column_name_1, column_name_2')
->from('table_name')
->where($db->qn('column_name_1').'='.$db->q('test'));
$db->setQuery($query);
การ update ใน sql
โค้ด: เลือกทั้งหมด
UPDATE table_name
SET column_name_1 = 'value_1', column_name_2 = 'value_2'
WHERE condition;
โค้ด: เลือกทั้งหมด
$db = JFactory::getDbo();
$query = $db->getQuery(true)
->update('table_name')
->set($db->qn('column_name_1').'='.$db->q('test'))
->set($db->qn('column_name_2').'='.$db->q('test2'))
->where($db->qn('column_name_1').'='.$db->q('test'));
$db->setQuery($query);
$db->execute();
การ delete ใน sql
โค้ด: เลือกทั้งหมด
DELETE FROM table_name
WHERE condition;
โค้ด: เลือกทั้งหมด
$db = JFactory::getDbo();
$query = $db->getQuery(true)
->delete('table_name')
->where($db->qn('column_name_1').'='.$db->q('test'));
$db->setQuery($query);
$db->execute();