PHP 数据库查询数据

X轴是一样的 但是Y轴是从数据库里查出来的 分别渲染到不同的echars里
想知道有没有简便一点的办法

 $X9_data = ['1000','1500','2000','2500','3000','3500'];
       foreach ($X9_data as $key => $value) {
        $result = DB::table('instruments_tuokong')->select('variation')->where('code','=','TK5-01')->whereIn('id',[1,2,3,4,5,6])->get();
        $Y9_data = [$result[0]->variation,$result[1]->variation,$result[2]->variation,$result[3]->variation,$result[4]->variation,$result[5]->variation];
       }
        
       //var_dump($Y9_data);die;

       foreach ($X9_data as $key => $value) {
        $result = DB::table('instruments_tuokong')->select('variation')->where('code','=','TK5-02')->whereIn('number',[1,2])->get();
        $Y8_data = [$result[0]->variation,$result[1]->variation,$result[2]->variation,$result[3]->variation,$result[4]->variation,$result[5]->variation];
       }
        foreach ($X9_data as $key => $value) {
        $result = DB::table('instruments_tuokong')->select('variation')->where('code','=','TK5-03')->whereIn('number',[1,3])->get();
        $Y7_data = [$result[0]->variation,$result[1]->variation,$result[2]->variation,$result[3]->variation,$result[4]->variation,$result[5]->variation];
       }
        foreach ($X9_data as $key => $value) {
        $result = DB::table('instruments_tuokong')->select('variation')->where('code','=','TK5-04')->whereIn('number',[1,4])->get();
        $Y6_data = [$result[0]->variation,$result[1]->variation,$result[2]->variation,$result[3]->variation,$result[4]->variation,$result[5]->variation];
       }
        foreach ($X9_data as $key => $value) {
        $result = DB::table('instruments_tuokong')->select('variation')->where('code','=','TK5-05')->whereIn('number',[1,5])->get();
        $Y5_data = [$result[0]->variation,$result[1]->variation,$result[2]->variation,$result[3]->variation,$result[4]->variation,$result[5]->variation];
       }
        foreach ($X9_data as $key => $value) {
        $result = DB::table('instruments_tuokong')->select('variation')->where('code','=','TK5-06')->whereIn('number',[1,6])->get();
        $Y10_data = [$result[0]->variation,$result[1]->variation,$result[2]->variation,$result[3]->variation,$result[4]->variation,$result[5]->variation];
       }
        foreach ($X9_data as $key => $value) {
        $result = DB::table('instruments_tuokong')->select('variation')->where('code','=','TK5-07')->whereIn('number',[1,7])->get();
        $Y11_data = [$result[0]->variation,$result[1]->variation,$result[2]->variation,$result[3]->variation,$result[4]->variation,$result[5]->variation];
       }
        foreach ($X9_data as $key => $value) {
        $result = DB::table('instruments_tuokong')->select('variation')->where('code','=','TK5-08')->whereIn('number',[1,8])->get();
        $Y12_data = [$result[0]->variation,$result[1]->variation,$result[2]->variation,$result[3]->variation,$result[4]->variation,$result[5]->variation];
       }
        foreach ($X9_data as $key => $value) {
        $result = DB::table('instruments_tuokong')->select('variation')->where('code','=','TK5-09')->whereIn('number',[1,9])->get();
        $Y13_data = [$result[0]->variation,$result[1]->variation,$result[2]->variation,$result[3]->variation,$result[4]->variation,$result[5]->variation];
       }
        foreach ($X9_data as $key => $value) {
        $result = DB::table('instruments_tuokong')->select('variation')->where('code','=','TK5-10')->whereIn('number',[1,10])->get();
        $Y14_data = [$result[0]->variation,$result[1]->variation,$result[2]->variation,$result[3]->variation,$result[4]->variation,$result[5]->variation];
       }

        foreach ($X9_data as $key => $value) {
        $result = DB::table('instruments_tuokong')->select('variation')->where('code','=','TK5-11')->whereIn('number',[1,11])->get();
        $Y15_data = [$result[0]->variation,$result[1]->variation,$result[2]->variation,$result[3]->variation,$result[4]->variation,$result[5]->variation];
       }
        foreach ($X9_data as $key => $value) {
        $result = DB::table('instruments_tuokong')->select('variation')->where('code','=','TK5-12')->whereIn('number',[1,12])->get();
        $Y16_data = [$result[0]->variation,$result[1]->variation,$result[2]->variation,$result[3]->variation,$result[4]->variation,$result[5]->variation];
       }
        foreach ($X9_data as $key => $value) {
        $result = DB::table('instruments_tuokong')->select('variation')->where('code','=','TK5-13')->whereIn('number',[1,13])->get();
        $Y17_data = [$result[0]->variation,$result[1]->variation,$result[2]->variation,$result[3]->variation,$result[4]->variation,$result[5]->variation];
       }
        foreach ($X9_data as $key => $value) {
        $result = DB::table('instruments_tuokong')->select('variation')->where('code','=','TK5-14')->whereIn('number',[1,14])->get();
        $Y18_data = [$result[0]->variation,$result[1]->variation,$result[2]->variation,$result[3]->variation,$result[4]->variation,$result[5]->variation];
       }

        foreach ($X9_data as $key => $value) {
        $result = DB::table('instruments_tuokong')->select('variation')->where('code','=','TK5-15')->whereIn('number',[1,15])->get();
        $Y19_data = [$result[0]->variation,$result[1]->variation,$result[2]->variation,$result[3]->variation,$result[4]->variation,$result[5]->variation];
       }
        foreach ($X9_data as $key => $value) {
        $result = DB::table('instruments_tuokong')->select('variation')->where('code','=','TK5-16')->whereIn('number',[1,16])->get();
        $Y20_data = [$result[0]->variation,$result[1]->variation,$result[2]->variation,$result[3]->variation,$result[4]->variation,$result[5]->variation];
       }

        foreach ($X9_data as $key => $value) {
        $result = DB::table('instruments_tuokong')->select('variation')->where('code','=','TK5-17')->whereIn('number',[1,17])->get();
        $Y21_data = [$result[0]->variation,$result[1]->variation,$result[2]->variation,$result[3]->variation,$result[4]->variation,$result[5]->variation];
       }
        foreach ($X9_data as $key => $value) {
        $result = DB::table('instruments_tuokong')->select('variation')->where('code','=','TK5-18')->whereIn('number',[1,18])->get();
        $Y22_data = [$result[0]->variation,$result[1]->variation,$result[2]->variation,$result[3]->variation,$result[4]->variation,$result[5]->variation];
       }

        foreach ($X9_data as $key => $value) {
        $result = DB::table('instruments_tuokong')->select('variation')->where('code','=','TK5-19')->whereIn('number',[1,19])->get();
        $Y23_data = [$result[0]->variation,$result[1]->variation,$result[2]->variation,$result[3]->variation,$result[4]->variation,$result[5]->variation];
       }

该回答采用chatgpt:

这段代码可以优化为使用一个循环来查询所有的数据,而不是每个仪器和编号都进行一次查询。可以使用嵌套循环来实现,外层循环遍历仪器编号,内层循环遍历编号,然后进行查询并将结果存储到对应的数组中。这样可以减少数据库查询的次数,提高代码的效率。具体实现可以参考以下代码:

php
$instruments = ['TK5-01', 'TK5-02', 'TK5-03', 'TK5-04', 'TK5-05', 'TK5-06', 'TK5-07', 'TK5-08', 'TK5-09', 'TK5-10', 'TK5-11', 'TK5-12', 'TK5-13', 'TK5-14', 'TK5-15', 'TK5-16', 'TK5-17', 'TK5-18', 'TK5-19'];
$numbers = [1, 2, 3, 4, 5, 6];
$data = [];

foreach ($instruments as $instrument) {
    $instrumentData = [];
    foreach ($numbers as $number) {
        $result = DB::table('instruments_tuokong')->select('variation')->where('code', '=', $instrument)->whereIn('number', [$number])->get();
        $instrumentData[] = $result[0]->variation;
    }
    $data[] = $instrumentData;
}
这样可以将所有的数据存储到一个二维数组中,每个仪器对应一个一维数组,数组中存储了对应编号的数据。可以根据需要进行访问和处理。