SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



:: Buchempfehlung ::

Fortgeschrittene CSS-Techniken

Fortgeschrittene CSS-Techniken zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > SELFPHP > MySQLi/PDO/(MySQL)
Hilfe Community Kalender Heutige Beiträge Suchen

MySQLi/PDO/(MySQL) Anfänger, Fortgeschrittene oder Experten können hier Fragen und Probleme rund um MySQLi/PDO/(MySQL) diskutieren

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 01.11.2010, 21:18:37
Bodoo Bodoo ist offline
Anfänger
 
Registriert seit: Nov 2010
Alter: 50
Beiträge: 3
neueste zeilen ausgeben ab bestimmter bedingung

hi

ich bräuchte mal ne kurze hilfe, falls mysql das überhaupt kann

angenommen ich habe ne tabelle mit den zeilen

a 1
b 1
c 1
d 1
e 0
f 1
g 1
h 0

nun möchte ich die zeilen haben die neuer sind als die letzte mit 0
also die zeilen a bis d. logisch nicht konstant die neuesten 4 sondern alle ab der letzten 0. falls es nötig ist, die zeilen haben alle auch ne autoincrement id und nen timestamp. aber wichtig ist, ich weiß vorher nicht die id mit 0 noch den timestamp. mit 2 queries ist es ja einfach, aber vielleicht schafft es ja einer mit nur einer query.

pseudo code: select * from table where spalte>0 ab letzte 0
Mit Zitat antworten
  #2  
Alt 02.11.2010, 01:16:18
Bodoo Bodoo ist offline
Anfänger
 
Registriert seit: Nov 2010
Alter: 50
Beiträge: 3
AW: neueste zeilen ausgeben ab bestimmter bedingung

erstes post gelöst aber neues problem:


tabelle:

CREATE TABLE IF NOT EXISTS `foo` (
`id` int(11) NOT NULL auto_increment,
`zeichen` varchar(1) NOT NULL,
`zahl` int(11) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=9 ;

INSERT INTO `foo` (`id`, `zeichen`, `zahl`) VALUES
(1, 'h', 0),
(2, 'g', 1),
(3, 'f', 1),
(4, 'e', 0),
(5, 'd', 1),
(6, 'c', 1),
(7, 'b', 1),
(8, 'a', 1);


ich habe folgende mysql query:

select count(*) as anz from (select B.id,B.zeichen from (SELECT * FROM `foo` where zahl<1 order by id desc limit 1) A left join `foo` B on B.id > A.id) C where zeichen='z'

das liefert 1 wenn man ein zeichen nimmt, was höhere id hat als letzte zeile mit 0, und 0 wenn nicht. im beispiel mit z eine 0, mit a b c oder d eine 1.

nun möchte ich das ganze noch mit einem if versehen.

und zwar

if (queryvonoben == 0) insert into foo ..... else null

aber was ich auch versuche, ich bekomme immer eine fehlermeldung.

kann mir einer helfen, wie ich das insert abhängig von der oberen query machen kann, also bei 0 einfügen, bei 1 nicht.

stehe da gerade auf dem schlauch.

danke
Mit Zitat antworten
  #3  
Alt 02.11.2010, 08:26:23
thomas_w thomas_w ist offline
Junior Member
 
Registriert seit: Aug 2010
Alter: 14
Beiträge: 395
AW: neueste zeilen ausgeben ab bestimmter bedingung

Zitat:
Zitat von Bodoo Beitrag anzeigen
if (queryvonoben == 0) insert into foo ..... else null

aber was ich auch versuche, ich bekomme immer eine fehlermeldung.
In Standard-SQL gibt es keine Möglichkeit, vor den INSERT eine Entscheidung zu setzen. Beim INSERT gibt es die Möglichkeit:

Code:
INSERT INTO tabelle_x
SELECT * FROM tabelle_y
WHERE ....
Damit werden alle Datensätze in die tabelle_x aus der tabelle_y eingefügt, die den WHERE Regeln des SELECT entsprechen.

Dein IF () Problem läßt sich mit einem "Stored Procedure" lösen oder mit dem übergeordneten Programm (PHP etc.).

Grüße
Thomas
__________________
Die SQL-Backstube
Bietet Rezepte, Lösungen und ausführliche Beispiele rund um gesundes SQL und zufriedene Datenbanken.
Mit Zitat antworten
  #4  
Alt 02.11.2010, 15:04:10
Bodoo Bodoo ist offline
Anfänger
 
Registriert seit: Nov 2010
Alter: 50
Beiträge: 3
AW: neueste zeilen ausgeben ab bestimmter bedingung

danke für die antwort
ok dann muss ich wohl mit lock/unlock arbeiten damit zwischen die nun nötigen 2 queries keine weitere änderung an der tabelle möglich ist. wollte es deswegen in ein query packen, um lock zu verhindern
Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Doppelte Zeilen löschen, wenn Bedingung erfüllt schorty MySQLi/PDO/(MySQL) 7 09.02.2010 01:01:02
daten auslesen, deren bedingung an mehrere zeilen geknüpft ist scraddy MySQLi/PDO/(MySQL) 1 26.08.2008 21:13:40
INSERT INTO bei bestimmter Bedingung Cantara MySQLi/PDO/(MySQL) 3 12.06.2008 16:00:30
SELECT mit einfacher WHERE Bedingung ausgeben Darius_2005 PHP Grundlagen 4 20.12.2005 14:10:41
Alle Zeilen mit bestimmten Wert ausgeben koerschgen2001 PHP Grundlagen 2 23.11.2005 17:09:31


Alle Zeitangaben in WEZ +2. Es ist jetzt 14:32:36 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.


© 2001-2024 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt