sql >> Database teknologi >  >> RDS >> Mysql

Sådan bruges betinget til denne forespørgsel i Laravel 5.2

Du vil gerne gøre noget som dette:

SELECT grade
FROM Users
WHERE id IN (
    SELECT id 
    FROM Users
    GROUP BY grade
    HAVING COUNT( grade ) = 1
) AND subject = 'english'`

Forespørgselsbygger har en ->whereIn, som du burde kunne bruge. For doven til at teste, men sådan noget virker muligvis.

$ids = user::select('id')
->groupBy('grade')
->having('gradecount', '=',1)
->get();

$grades = user::select('grade')
->whereIn('id', $ids)
->where('subject', 'english')
->get();



  1. Sådan vælger du data fra en nøgleværdipartabel

  2. Generel vejledning til opbygning og implementering af databaseserver

  3. SQL Server:Nyttige tips til nybegyndere

  4. PHP tager 90 gange længere tid at køre forespørgslen end MySQL-klienten