Hallo möchte Ich mag diese ähnlichemysql select Unterabfrage in yii2
ID | Forename | Surname | Created
---------------------------------
1 | Tom | Windsor | 2008-02-01
2 | Anne | Baker | 2008-03-01
3 | Bill | Sykes | 2008-01-20
ID | Forename | Surname | Created
---------------------------------
1 | Tom | Smith | 2008-01-01
1 | Tom | Windsor | 2008-02-01
2 | Anne | Thorn | 2008-01-05
2 | Anne | Baker | 2008-03-01
3 | Bill | Sykes | 2008-01-20
wird lassen, so dass ich eine MySQL-Abfrage machen:
SELECT
*
FROM tableA as A
WHERE created = (
SELECT
MAX(created)
FROM tableA GROUP BY id having id=A.id
);
und es funktioniert auch in mysql kann ich bekommen was ich will.
aber ich weiß nicht, wie diese
aktiv in yii2 zu schreiben habe ich versucht:
$query = (new \yii\db\Query())
->select(['A.*'])
->from('tableA AS A')
->where('created = (SELECT MAX(created) from tableA GROUP BY id having id=A.id');
$command = $query->createCommand();
$data = $command->queryAll();
aber es hat nicht funktioniert.
danke.
Es ist nicht sehr klar, was Sie zu erreichen versuchen. Versuchen Sie zuerst, es in Wörtern zu definieren, und erstellen Sie dann die Abfrage dafür. Und das scheint kein YII2-Problem zu sein, sondern nur eine normale mySql-Abfrage. –
Was ist Ihr Primärschlüssel? – Strawberry
@Strawberry Ich denke das ist nicht das Problem. Weil ich mit MySQL-Abfrage arbeiten kann. Ich habe die andere Seriennummer als meinen Primärschlüssel –