如何在单个查询中获取与提供的id对应的所有“name”列?
假设我有一个这样的php数组$ids = [ '1', '3', '7', '24', ... ];
那么,是否可以在下表中$ids[i]='id'
的位置获取'name',所有这些都在一个查询中,或者我需要使用for
循环?
CREATE TABLE `services` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(20) NOT NULL DEFAULT '',
`description` varchar(100) NOT NULL DEFAULT '',
PRIMARY KEY (`id`),
UNIQUE KEY `id` (`id`) USING BTREE
)
我在和CodeIgniter一起工作。
最佳答案
您可以使用where_in
进行此操作
$ids = [ '1', '3', '7', '24', ... ];
$this->db->select('name');
$this->db->from('services');
$this->db->where_in('id', $ids);
关于php - MySql在单个查询中为所有提供的X选择select field_1,其中X = field_2,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32449566/