Path: utzoo!utgpu!news-server.csri.toronto.edu!rpi!usc!elroy.jpl.nasa.gov!swrinde!sdd.hp.com!uakari.primate.wisc.edu!gdavis From: gdavis@primate.wisc.edu (Gary Davis) Newsgroups: comp.sys.mac.hypercard Subject: Re: How to find fields that DO NOT contain a string? Message-ID: <4506@uakari.primate.wisc.edu> Date: 13 Jun 91 06:02:35 GMT References: <4500@uakari.primate.wisc.edu> Sender: news@primate.wisc.edu Reply-To: gdavis@primate.wisc.edu Lines: 33 From article <4500@uakari.primate.wisc.edu>, by gdavis@primate.wisc.edu (Gary Davis): > From article , by mike@ymt.com (Michael Czeiszperger): >> The find command in hypercard 2.x seems to be fairly lacking. Does >> anyone know a way to find fields that don't contain a certain >> string without going to each card and checking? Is there a commercial >> or PD find replacement that will do this? > > I haven't tried it, but I think the following should work: > > mark all cards > unmark cards by finding "your string" > Well I tried it and it works fine. It took about 20 secs to mark all cards not containg "Smith" in a database of about 5000 names. I mention this because another approach suggested was to use the following statement: mark cards where "your string" is not in field "Foo" I tried it on Smith and found it took about 5 minutes. Where the string was a city name found on a majority of the cards, the unmark approach took much longer, about 2.5 minutes, though the "where" approach was still slower. Incidently, I've just started playing with Reports 2.0 from Nine to Five Software. It has a good report generator and a neat spreadsheet like window for viewing a table generated from records in a HyperCard stack. It's very fast. In the spreadsheet view I selected all records which didn't contain the city name. It took Reports only 15 seconds to come up with the list, where HyperCard itself took 2.5 minutes. How can it be so much faster? Gary Davis